Heim  >  Artikel  >  Backend-Entwicklung  >  Analyse von 50 Tipps zur Verbesserung der Ausführungseffizienz von PHP-Website-Programmen

Analyse von 50 Tipps zur Verbesserung der Ausführungseffizienz von PHP-Website-Programmen

黄舟
黄舟Original
2017-03-28 09:28:311068Durchsuche

PHP ist eine universelle Open-Source-Skriptsprache. Die Syntax übernimmt die Eigenschaften der C-Sprache. Sie ist leicht zu erlernen und weit verbreitet. Sie eignet sich hauptsächlich für den Bereich der Webentwicklung. Hangzhou Dane PHP-Schulungsexperten haben 50 Tipps zur Verbesserung der Effizienz der Ausführung von PHP-Website-Programmen gesammelt und zusammengestellt:


1. Verwenden Sie einfache Anführungszeichen anstelle von doppelten Anführungszeichen, um das string , das geht schneller.


2. Versuchen Sie, die Klassenmethode als

statisch zu definieren. Die Geschwindigkeit wird um fast das Vierfache erhöht.


3. $row['id'] ist 7-mal schneller als $row.


4.

echo ist schneller als print und verwendet mehrere Parameter von echo anstelle der String-Verkettung.


5. Bestimmen Sie die maximale Anzahl von Schleifen, bevor Sie die for-Schleife ausführen.


6. Heben Sie die Registrierung nicht verwendeter Variablen, insbesondere großer Arrays, auf, um Speicher freizugeben.


7 Vermeiden Sie die Verwendung von get, set und autoload.


8. require_once() ist teuer.


9. Versuchen Sie, bei include-Dateien absolute Pfade zu verwenden, um die Geschwindigkeit zu vermeiden, mit der PHP nach Dateien in include_path sucht Der Systempfad wird weniger zunehmen.


10 Wenn Sie wissen möchten, wann das Skript ausgeführt wird, ist die Verwendung von $_SERVER['REQUEST_TIME'] besser time()


11. Funktion ersetzt reguläre Ausdrücke, um dieselbe Funktion zu vervollständigen.


12. Die Funktion str_replace ist schneller als die Funktion preg_replace, aber die Funktion strtr ist viermal effizienter als die Funktion str_replace.


13. Wenn eine String-Ersetzungsfunktion Arrays oder Zeichen als Parameter akzeptiert und die Parameterlänge nicht zu lang ist, können Sie erwägen, jeweils einen zusätzlichen Ersetzungscode zu schreiben Anstatt nur eine Codezeile zu schreiben, um den Parameter als Zeichen zu übergeben, akzeptieren Sie ein Array als Abfrage- und Ersetzungsparameter.


14. Es ist besser, die Groß-/Kleinschreibung zu verwenden, als mehrere if, else if-Anweisungen zu verwenden.


15. Die Methode, @ zum Blockieren von Fehlermeldungen zu verwenden, ist sehr ineffizient, äußerst ineffizient.


16. Öffnen Sie das mod_deflate-Modul von Apache, um die Browsing-Geschwindigkeit von Webseiten zu erhöhen.


17. Die Datenbankverbindung sollte nach Beendigung der Verwendung geschlossen werden und keine langen Verbindungen verwenden.


18. Fehlermeldungen sind teuer.


19. Das Erhöhen lokaler Variablen in Methoden geht am schnellsten. Nahezu der Geschwindigkeit, mit der lokale Variablen in einer Funktion aufgerufen werden.


20. Das Erhöhen einer globalen Variablen ist 2-mal langsamer als das Erhöhen einer lokalen Variablen.


21. Das Erhöhen eines Objekts Attributs ist dreimal langsamer als das Erhöhen einer lokalen Variablen.


22. Das Erhöhen einer undefinierten lokalen Variablen ist 9 bis 10 Mal langsamer als das Erhöhen einer vordefinierten lokalen Variablen.


23. Das bloße Definieren einer lokalen Variablen, ohne sie in der Funktion aufzurufen, verlangsamt ebenfalls die Geschwindigkeit. PHP wird wahrscheinlich prüfen, ob eine globale Variable vorhanden ist.


24. Methodenaufrufe scheinen nichts mit der Anzahl der in der Klasse definierten Methoden zu tun zu haben.


25. Methoden in abgeleiteten Klassen werden schneller ausgeführt als dieselben Methoden, die in Basisklassen definiert sind.


26. Der Aufruf einer leeren Funktion mit einem Parameter benötigt Zeit, die der Durchführung von 7 bis 8 lokalen Variablen-Inkrementierungsoperationen entspricht. Ein ähnlicher Methodenaufruf erfordert fast 15 Inkrementierungsoperationen für lokale Variablen.


27. Die Zeit, die Apache zum Parsen eines PHP-Skripts benötigt, ist zwei- bis zehnmal langsamer als das Parsen einer statischenHTML-Seite. Versuchen Sie, mehr statische HTML-Seiten und weniger Skripte zu verwenden.


28. 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.


29 Versuchen Sie, so viel wie möglich zwischenzuspeichern. Sie können memcached verwenden. Memcached ist ein leistungsstarkes Speicherobjekt-Caching-System, mit dem dynamische Webanwendungen beschleunigt und die Datenbanklast reduziert werden kann. Das Zwischenspeichern von OP-Codes ist nützlich, damit Skripte nicht für jede Anfrage neu kompiliert werden müssen.


30 Da strlen() eine Funktion ist, wird es etwas langsam sein, da der Funktionsaufruf viele Schritte durchläuft, wie zum Beispiel Kleinbuchstaben ( Da PHP bei Funktionsnamen in Kleinbuchstaben nicht zwischen Groß- und Kleinschreibung von Funktionsnamen unterscheidet, wird die Hash-Suche zusammen mit der aufgerufenen Funktion ausgeführt. In einigen Fällen können Sie den isset()-Trick verwenden, um die Ausführung Ihres Codes zu beschleunigen.


Der Aufruf von isset() ist zufällig schneller als strlen(), da isset() im Gegensatz zu letzterem als Sprachkonstrukt bedeutet, dass seine Funktionssuche erfolgt und Kleinbuchstaben sind für die Ausführung nicht erforderlich.


31. Beim Ausführen 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. Dies ist eine Art Optimierungsverarbeitung.


32. Es ist nicht notwendig, Objektorientiert zu sein. Objektorientiert ist oft sehr teuer und jede Methode und jeder Objektaufruf verbraucht viel der Erinnerung.


33. Es ist nicht notwendig, Klassen zu verwenden, um alle Datenstrukturen zu implementieren, Arrays sind auch sehr nützlich.


34. Unterteilen Sie die Methoden nicht zu sehr. Überlegen Sie genau, welche Codes Sie wirklich wiederverwenden möchten.


35. Sie können den Code jederzeit in Methoden aufteilen, wenn Sie ihn benötigen.


36 Versuchen Sie, eine große Anzahl integrierter PHP-Funktionen zu verwenden.


37. Wenn der Code viele zeitaufwändige Funktionen enthält, können Sie die Verwendung von C-Erweiterungen zu deren Implementierung in Betracht ziehen.


38. Profilieren Sie Ihren Code. Der Prüfer verrät Ihnen, welche Teile des Codes wie viel Zeit in Anspruch nehmen. Der Xdebug-Debugger umfasst Inspektionsprogramme, die die Gesamtintegrität Ihres Codes bewerten und Engpässe in Ihrem Code aufdecken.


39. mod_zip kann als Apache-Modul verwendet werden, um Ihre Daten sofort zu komprimieren und das Datenübertragungsvolumen um 80 % zu reduzieren.


40 Wenn file_get_contents zum Ersetzen von file, fopen, feof, fgets und anderen Methodenreihen verwendet werden kann, versuchen Sie, file_get_contents zu verwenden, was effizienter ist


41. Führen Sie Dateioperationen so wenig wie möglich aus, obwohl die Dateioperationseffizienz von PHP nicht gering ist


42 SQL-Anweisung: Führen Sie nach Möglichkeit so wenige Einfüge- und Aktualisierungsvorgänge wie möglich aus


43. Verwenden Sie möglichst viele interne PHP-Funktionen


44. Deklarieren Sie keine Variablen innerhalb von Schleifen, insbesondere keine großen Variablen: Objekte


45.

Mehrdimensionales ArrayVersuchen Sie, verschachtelte Zuweisungen nicht zu wiederholen;


46 kann PHP verwenden. Verwenden Sie bei internen String-Manipulationsfunktionen keine regulären Ausdrücke.


47. foreach ist effizienter. Versuchen Sie, foreach anstelle von while- und for-Schleifen zu verwenden ;


48 Verwenden Sie einfache Anführungszeichen anstelle von doppelten Anführungszeichen, um Zeichenfolgen in Anführungszeichen zu setzen;


49. „Ersetzen Sie i=i+1 durch i+=1. Es entspricht den Gewohnheiten von c/c++ und ist effizienter.“;


50. Bei globalen Variablen sollten Sie es nach der Verwendung deaktivieren();

Das obige ist der detaillierte Inhalt vonAnalyse von 50 Tipps zur Verbesserung der Ausführungseffizienz von PHP-Website-Programmen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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