Heim  >  Artikel  >  Einführung in 10 Dinge, die Sie in PHP7 nicht tun können

Einführung in 10 Dinge, die Sie in PHP7 nicht tun können

黄舟
黄舟Original
2017-06-18 15:39:142094Durchsuche

Dieser Artikel stellt hauptsächlich die 10 Dinge vor, die man in PHP nicht tun sollte. Er hat einen gewissen Referenzwert.

Denken Sie daran, 10 Dinge, die Sie nicht tun sollten in PHP 7

1. Verwenden Sie nicht die Funktion mysql_

Der Tag ist endlich gekommen Kommen Sie, und von nun an „sollten“ Sie nicht nur Mysql_-Funktionen nicht mehr verwenden. PHP 7 hat sie alle aus dem Kern entfernt, was bedeutet, dass Sie auf die viel bessere mysqli_-Funktion oder die flexiblere PDO-Implementierung migrieren müssen.

2. Schreiben Sie keinen Junk-Code

Dieser ist vielleicht leicht zu verstehen, aber Es wird immer komplizierter und wird immer wichtiger, da die Geschwindigkeitsverbesserungen von PHP 7 einige Ihrer Probleme verbergen können. Geben Sie sich nicht nur mit der Geschwindigkeit Ihrer Website zufrieden, denn die Migration auf PHP 7 hat sie schneller gemacht.

Um zu verstehen, wie wichtig Geschwindigkeit ist und wie man es besser macht, werfen Sie einen Blick auf unseren Artikel Erste Schritte mit der Geschwindigkeitsoptimierung.

Als Entwickler sollten Sie immer darauf achten, Skripte bei Bedarf zu laden, sie nach Möglichkeit zu verbinden, effiziente Datenbankabfragen zu schreiben, nach Möglichkeit Caching zu verwenden und vieles mehr.

3. Verwenden Sie kein PHP-Endtag am Ende der Datei

Sie können nachsehen, wann eine Datei mit endet PHP-Code, WordPress Der Großteil des Kerncodes hat am Ende das PHP-Tag entfernt. Tatsächlich wird es vom Zend Framework ausdrücklich deaktiviert. PHP benötigt kein schließendes Tag am Ende der Datei und wir können sicherstellen, dass am Ende keine Leerzeichen hinzugefügt werden, indem wir es entfernen.

4. Machen Sie keine unnötigen Pass-by-Reference

Ich persönlich mag Pass-by-Reference nicht. Ich weiß, dass es manchmal nützlich ist, aber manchmal macht es den Code schwer zu verstehen und die Ergebnisse schwieriger vorherzusagen.

Manche Leute denken, dass dadurch der Code schneller läuft, aber laut einigen erfahrenen PHP-Programmierern stimmt das nicht.

Ein Beispiel dafür, warum Zitieren schlecht ist, ist, dass PHP über integrierte shuffle() und sort() verfügt. Sie ändern das ursprüngliche Array, anstatt das verarbeitete Array zurückzugeben, was unlogisch ist.

5. Führen Sie keine Abfragen in Schleifen aus

Das Ausführen von Abfragen in Schleifen ist sehr verschwenderisch. Es belastet Ihr System unnötig und kann außerhalb der Schleife möglicherweise schneller die gleichen Ergebnisse erzielen. Wenn ich auf eine Situation stoße, in der ich so etwas benötige, löse ich das Problem normalerweise mit zwei separaten Abfragen, die ich zum Aufbau des Datenarrays verwende. Ich werde dann das Array durchlaufen, ohne dabei eine Abfrage auszuführen.

Da hier WordPress verwendet wird, kann es einige Ausnahmen geben. Obwohl get_post_meta() viele Daten aus der Datenbank abruft, können Sie es in einer Schleife verwenden, wenn Sie die Metadaten eines bestimmten Blog-Beitrags durchlaufen. Dies liegt daran, dass WordPress beim ersten Aufruf tatsächlich alle Metadaten abruft und zwischenspeichert. Nachfolgende Aufrufe verwenden diese Cache-Daten, ohne Datenbankaufrufe durchzuführen.

Der beste Weg, dies zu verstehen, besteht darin, die Funktionsdokumentation zu lesen und ein Tool wie Query Monitor zu verwenden.

6. Verwenden Sie kein * in SQL-Abfragen

Natürlich ist dies eher ein MySQL-Problem, aber wir sind es gewohnt, SQL-Code zu schreiben in PHP, also ziemlich dasselbe. Wenn Sie dies jedoch vermeiden können, verwenden Sie das Platzhalterzeichen nicht in SQL-Abfragen, insbesondere wenn die Datenbank viele Spalten hat.

Sie sollten explizit angeben, welche Zeilen erforderlich sind, und nur diese abrufen. Dies trägt dazu bei, den Ressourcenverbrauch zu reduzieren, Daten zu schützen und die Dinge so klar wie möglich zu machen.

Für SQL müssen Sie alle verfügbaren Funktionen kennen und ihre Geschwindigkeit so weit wie möglich testen. Verwenden Sie beim Berechnen von Mittelwerten, Summen oder ähnlichen numerischen Berechnungen SQL-Funktionen anstelle von PHP-Funktionen. Wenn Sie sich über die Geschwindigkeit einer bestimmten Abfrage nicht sicher sind, testen Sie sie und probieren Sie ein paar andere Zusammenstellungen aus – und verwenden Sie dann die beste.

7. Vertrauen Sie Benutzereingaben nicht

Es ist unklug, Benutzereingaben zu vertrauen. Immer validieren, filtern, entkommen, prüfen und einen Ausweg freilassen. Es gibt drei Probleme mit Benutzerdaten: Wir Entwickler ziehen nicht alle Möglichkeiten in Betracht, sie sind oft falsch und sie könnten absichtlich kompromittiert werden.

Ein gut durchdachtes System schützt vor diesen Bedrohungen. Stellen Sie sicher, dass Sie beim Umgang mit der Datenbank mithilfe integrierter Funktionen wie filter_var() und Escape (oder Vorkompilierung) nach geeigneten Werten suchen.

WordPress verfügt über einige Funktionen, um das Problem zu lösen. Weitere Informationen finden Sie im Artikel Validieren, Escapen und Filtern von Benutzerdaten.

8. Versuchen Sie nicht, schlau zu sein

Ihr Ziel sollte es sein, eleganten Code zu schreiben, der Ihre Absichten klarer zum Ausdruck bringt. Möglicherweise können Sie 0,01 Sekunden pro Seite optimieren, indem Sie alles auf eine Ein-Wort-Variable kürzen, mehrere Schichten ternärer Logik verwenden und andere Mittel verwenden. Aber das wird nur große Probleme für Sie und Ihre Mitmenschen schaffen.

Benennen Sie Variablen entsprechend, dokumentieren Sie Ihren Code und geben Sie Klarheit Vorrang vor Kürze. Noch besser ist es, standardmäßigen objektorientierten-Code zu verwenden, der mehr oder weniger das Dokument selbst ist, ohne dass eine Reihe von Inline-Werten erforderlich sind.

9. Erfinden Sie das Rad nicht neu

PHP gibt es schon lange, und Websites gibt es schon noch länger. Die Chancen stehen gut, dass jemand, was auch immer Sie bauen müssen, bereits zuvor gebaut hat. Scheuen Sie sich nicht, andere um Unterstützung zu bitten. Github ist Ihr guter Freund, ebenso wie Composer und Packagist.

Von Protokollierungstools bis hin zu Farbkorrekturtools, von Leistungsanalysatoren bis zu Unit-Testing-Frameworks, von Mailchimp-APIs bis hin zu Twitter Bootstrap ist alles per Knopfdruck (oder Typ) zugänglich den Befehl), um sie zu bekommen, benutze sie!

10. Ignorieren Sie nicht andere Sprachen

Wenn Sie ein PHP-Programmierer sind, haben Sie jetzt eine gute Gelegenheit, zumindest HTML zu verstehen. CSS, JavaScript und MySQL. Wenn Sie mit diesen Sprachen besser umgehen können, ist es an der Zeit, JavaScript neu zu erlernen. JavaScript ist nicht jQuery, Sie sollten JavaScript richtig erlernen, um es effizienter nutzen zu können.

Ich empfehle Ihnen auch, objektorientiertes PHP zu lernen. Das spart Zeit und wird besser, wenn der Code größer ist. Für Sprachen wie C# und Java sind sie auch einfacher zu verstehen, nachdem Sie OOP verstanden haben.

Erweitern Sie Ihr Wissen, indem Sie mehr über Paketmanager, Build-Skripte, CoffeeScript, LESS, SASS, YAML, Skript-Engines und andere leistungsstarke Tools erfahren. Ich empfehle Ihnen dringend, einen Blick auf andere Frameworks zu werfen, insbesondere auf Laravel.

Wie wäre es, wenn Sie die Entwicklung von Ruby-, RoR-, Android-, iPhone- und Windows Phone-Apps erlernen, während Sie sie nutzen, um Ihre Arbeit hervorragend zu erledigen? Sie denken vielleicht, das sei sinnlos, weil sie außerhalb Ihrer Komfortzone liegen und nicht den Anforderungen des Jobs entsprechen, aber genau das sind sie. In jeder Sprache gibt es einige praktische Dinge zu lernen, aber auch neue Dinge, denen Sie noch nie zuvor begegnet sind. Es ist kein Zufall, dass alle Top-PHP-Entwickler viele andere Programmiersprachen beherrschen.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn