PHP-Code-Optimierung ist eine wichtige Dimension, um zu beurteilen, ob Sie ein qualifizierter PHP-Ingenieur sind. Wenn Sie ein Programm schreiben, möchten Sie immer, dass Ihr Programm möglichst wenig Ressourcen beansprucht, schneller läuft und weniger Code hat. Die einzigartige Syntax von PHP mischt C, Java, Perl und die innovative Syntax von PHP, die dynamische Webseiten schneller ausführen kann als CGI oder Perl. PHP bettet Programme zur Ausführung in HTML-Dokumente ein und seine Ausführungseffizienz ist viel höher als bei CGI, das HTML-Tags vollständig generiert.
Der Zweck der PHP-Optimierung besteht darin, die geringsten Kosten im Austausch für die schnellste Ausführungsgeschwindigkeit und den am einfachsten zu wartenden Code auszugeben.
PHP-Code-Optimierungstipps
1. Echo ist schneller als Print.
2. Verwenden Sie mehrere Echoparameter anstelle der Zeichenfolgenverkettung.
3. Bestimmen Sie die maximale Anzahl von Schleifen, bevor Sie die for-Schleife ausführen. Verwenden Sie stattdessen am besten foreach.
4. Bei globalen Variablen sollten sie nach der Verwendung deaktiviert werden.
5. Verwenden Sie einfache Anführungszeichen anstelle von doppelten Anführungszeichen, um die Zeichenfolge einzuschließen, was schneller ist. Da PHP nach Variablen in einer Zeichenfolge sucht, die von doppelten Anführungszeichen umgeben ist, ist dies bei einfachen Anführungszeichen nicht der Fall.
6. Funktionen ersetzen reguläre Ausdrücke, um dieselbe Funktion zu erfüllen.
7. Bei der Ausführung der Inkrementierung oder Dekrementierung der Variablen $i ist $i++ langsamer als ++$i. Dieser Unterschied ist spezifisch für PHP und gilt nicht für andere Sprachen. ++$i ist schneller, da nur 3 Anweisungen (Opcodes) erforderlich sind, während $i++ 4 Anweisungen erfordert. Nach dem Inkrementieren wird tatsächlich eine temporäre Variable erstellt, die anschließend inkrementiert wird. Das Präfix-Inkrement erhöht sich direkt auf den ursprünglichen Wert.
8. Es ist besser, die Groß-/Kleinschreibung zu verwenden, als mehrere if-else-if-Anweisungen zu verwenden.
9. Verwenden Sie var_dump, um PHP-Code zu debuggen. Wenn Sie nach PHP-Debugging-Technologie suchen, muss ich sagen, dass var_dump das Ziel sein sollte, nach dem Sie suchen. Dieser Befehl kann alle Ihre Anforderungen in Bezug auf die Anzeige von PHP-Informationen erfüllen, und die meisten Fälle von Debugging-Code beziehen sich auf das Abrufen von Werten in PHP.
10. Verwenden Sie beim Einbinden von Dateien den vollständigen Pfad und die Auflösung des Betriebssystempfads dauert weniger lange.
11. Es ist eine schlechte Praxis, häufig globale Werte zu schaffen, aber manchmal erfordert die tatsächliche Situation dies. Es ist eine gute Idee, globale Werte für Datenbanktabellen- oder Datenbankverbindungsinformationen zu verwenden, aber verwenden Sie globale Werte nicht häufig in Ihrem PHP-Code. Alternativ besteht ein besserer Ansatz darin, Ihre globalen Variablen in einer config.php-Datei zu speichern.
12. Wenn Sie wissen möchten, wann das Skript ausgeführt wird, ist es besser, $_SERVER[‘REQUEST_TIME’] anstelle von time() zu verwenden.
13. Öffnen Sie das mod_deflate-Modul von Apache.
14. Die Verwendung von @ zum Blockieren von Fehlermeldungen ist sehr ineffizient.
15. Versuchen Sie, so viele integrierte PHP-Funktionen wie möglich zu verwenden.
16. Das Erhöhen einer undefinierten lokalen Variablen ist 9 bis 10 Mal langsamer als das Erhöhen einer vordefinierten lokalen Variablen.
17. Methoden in abgeleiteten Klassen werden schneller ausgeführt als dieselben Methoden, die in Basisklassen definiert sind.
18. Das bloße Definieren einer lokalen Variablen, ohne sie in einer Funktion aufzurufen, verlangsamt auch die Geschwindigkeit (im gleichen Maße wie das Erhöhen einer lokalen Variablen)
19. Apache analysiert ein PHP-Skript Die Zeit ist zwei- bis zehnmal langsamer als das Parsen einer statischen HTML-Seite. Versuchen Sie, mehr statische HTML-Seiten und weniger Skripte zu verwenden.
20. Wie bereits erwähnt, ist in 99 % der Fälle die Datenbank der wichtigste Teil jeder PHP-Website. Daher müssen Sie mit der korrekten Verwendung von SQL bestens vertraut sein und sich mit relationalen Tabellen und fortgeschritteneren Datenbanktechnologien vertraut machen.
21. Der Aufruf einer leeren Funktion mit einem Parameter dauert genauso lange wie die Durchführung von 7 bis 8 lokalen Variablen-Inkrementierungsoperationen.
22. Wenn Sie eine Zeichenfolge bearbeiten und überprüfen müssen, ob ihre Länge bestimmte Anforderungen erfüllt, verwenden Sie natürlich die Funktion strlen(). Diese Funktion wird recht schnell ausgeführt, da sie keine Berechnungen durchführt und lediglich die bekannte Zeichenfolgenlänge zurückgibt, die in der zval-Struktur (der in C integrierten Datenstruktur zum Speichern von PHP-Variablen) gespeichert ist.
23. Nicht in allen Situationen muss die objektorientierte Entwicklung verwendet werden. Die objektorientierte Entwicklung ist oft sehr teuer und jede Methode und jeder Objektaufruf verbraucht viel Speicher.
24. Sofern das Skript nicht zwischengespeichert werden kann, wird es bei jedem Aufruf neu kompiliert. Durch die Einführung eines PHP-Caching-Mechanismus kann die Leistung normalerweise um 25 bis 100 % verbessert werden, um den Kompilierungsaufwand zu eliminieren.
Hinweise zur PHP-Code-Optimierung
1. Kurzer Code ist nicht gleich schneller Code
Viele Menschen hoffen, den Code beim Schreiben von Programmen so prägnant wie möglich zu schreiben, aber je kürzer der Code, desto besser. Manchmal dauert die Ausführung länger.
2. Beim Schreiben eines Programms sollten Sie mehr auf die Skalierbarkeit des Programms achten, als auf Geschwindigkeit.
3. Bevor Sie Ihren Code optimieren, schauen Sie sich zunächst die datenbankbezogenen Teile an, da der Engpass bei den meisten Anwendungen eher die Datenbank als der Code ist.
4. Mikrooptimierung ist den Gewinn nicht wert
Was ist Mikrooptimierung? Ersetzen Sie, wie bereits erwähnt, den regulären Ausdrucksteil des Codes durch Zeichenfolgenfunktionen. Dies hat folgende Nachteile:
(1) Es dauert lange
(2) Es wird das Leistungsproblem nicht grundsätzlich lösen
(3) Es ist sehr wahrscheinlich, dass der vorherige Code zerstört wird und unbekannte Fehler generiert werden
(4) Der Aufwand übersteigt die Belohnung
Ich muss hier ein Missverständnis erwähnen. Um das Programm optimierter zu machen, berücksichtigen einige Leute die Optimierung bei der Analyse der Geschäftslogik, um besser zu werden Ergebnisse. Geschäftslogik kodieren und ändern. Das ist eine sehr dumme Idee, denn der Zweck des Programms besteht darin, in der Realität auftretende Probleme zu lösen, und wir können das Pferd nicht von hinten aufzäumen.