Heim  >  Artikel  >  Backend-Entwicklung  >  Teilen effizienter PHP-Schreibmethoden

Teilen effizienter PHP-Schreibmethoden

小云云
小云云Original
2018-03-15 13:01:471436Durchsuche

In diesem Artikel erfahren Sie hauptsächlich, wie Sie effizientes PHP schreiben. Ich hoffe, er kann Ihnen helfen.

1. Statische Variablen

Statische Variablen beginnen mit der Erstellung der Klasse und enden mit dem Tod der Klasse; Tod der Klasseninstanz. Statische Methoden können direkt aufgerufen werden, während Instanzmethoden über Instanzen aufgerufen werden müssen und statische Methoden viel schneller sind. Statische Methoden rufen immer denselben Speicher auf und können nicht automatisch zerstört werden, sondern durch Instanziierung.

2. Echo ist effizienter als print

, da echo keinen Wert zurückgibt, während print eine Ganzzahl zurückgibt. 注意,echo大字符串的时候,如果没有做调整就严重影响性能。使用打开apached的mod_deflate进行压缩或者打开ob_start先将内容放进缓冲区。

3. Stellen Sie die maximale Anzahl von Schleifen vor der Schleife ein, nicht während der Schleife; Beispielsweise wird es jedes Mal in der for-Schleife berechnet.

4. Zerstören Sie Variablen, um Speicher freizugeben, insbesondere große Arrays

Arrays und Objekte sind im PHP-Speicher etwas Besonderes Die Nutzung ist auf die zugrunde liegende Zend-Engine von PHP zurückzuführen. Im Allgemeinen beträgt die Speicherauslastung von PHP-Arrays nur 1/10. Das heißt, ein Array mit 100 MB Speicher in der Sprache C erfordert 1 GB. Insbesondere in Systemen, in denen PHP als Backend-Server eingesetzt wird, tritt häufig das Problem eines übermäßigen Speicherverbrauchs auf.

5.

requiere_once() verbraucht mehr Ressourcen Stellen Sie fest, ob auf die Datei verwiesen wurde. Versuchen Sie daher, sie nach Möglichkeit nicht zu verwenden. Häufig verwendete „require/include“-Methoden sollten vermieden werden.

6. Verwenden Sie absolute Pfade in Includes und Requires.

Wenn ein relativer Pfad enthalten ist, durchläuft PHP den include_path, um die Datei zu finden. Durch die Verwendung absoluter Pfade werden solche Probleme vermieden, sodass die Auflösung des Betriebssystempfads weniger Zeit in Anspruch nimmt.

7 kann die internen String-Manipulationsfunktionen von PHP verwenden Versuchen Sie in diesem Fall, sie anstelle regulärer Ausdrücke zu verwenden. Die Effizienz ist höher als bei regulären Ausdrücken str_replace ;


Führen Sie auch keine unnötigen Ersetzungen durch. Auch wenn keine Ersetzung erfolgt, reserviert str_replace Speicher für seine Parameter. Sehr langsam! Lösung: Verwenden Sie strpos, um zunächst (sehr schnell) zu suchen, um festzustellen, ob ein Austausch erforderlich ist, und ersetzen Sie ihn dann gegebenenfalls. Effizienz: - Wenn ein Austausch erforderlich ist: Die Effizienz ist nahezu gleich, der Unterschied beträgt etwa 0,1 %. Wenn keine Ersetzung erforderlich ist: Die Verwendung von strpos ist 200 % schneller.

8. Es ist am besten, @ nicht zu verwenden, da die Verwendung von @ zum Verdecken von Fehlern die Laufgeschwindigkeit des verringert script; Die Verwendung von @ führt tatsächlich viele Vorgänge im Hintergrund aus. Der Effizienzunterschied zwischen der Verwendung von @ und der Nichtverwendung von @ beträgt: 3-mal. Verwenden Sie @ insbesondere nicht in einer Schleife, selbst wenn Sie error_reporting(0) verwenden, um den Fehler zuerst auszuschalten und ihn dann wieder einzuschalten, nachdem die Schleife abgeschlossen ist, ist dies schneller als die Verwendung von @.

9.$row['id'] ist 7-mal schneller als $row[id]; Es wird empfohlen, die Gewohnheit zu entwickeln, Anführungszeichen zu Array-Schlüsseln hinzuzufügen;

10.

Nicht verwenden Funktionen in Schleifen


Beispiel: For($x=0; $x < count($array); $x), die count()-Funktion berechnet zuerst außerhalb ;

11. Das Erstellen einer nicht deklarierten lokalen Variablen ist 9-10 Mal langsamer als das Erstellen einer bereits definierten lokalen Variablen

12. Einfache Anführungszeichen anstelle von doppelten Anführungszeichen, um Zeichenfolgen zu enthalten

13 analysiert ein PHP-Skript. Das Skript ist zwei- bis zehnmal langsamer als das Parsen einer statischen HTML-Seite.


Verwenden Sie mehr statische HTML-Seiten und weniger Skripte.

14. Variablen nicht einfach kopieren

Manchmal, um den PHP-Code übersichtlicher zu gestalten , kopieren einige PHP-Neulinge (einschließlich mir) die vordefinierten Variablen in eine Variable mit einem kürzeren Namen. Das Ergebnis ist tatsächlich eine Verdoppelung des Speicherverbrauchs, was das Programm nur langsamer macht.

15. Verwenden Sie die Select-Branch-Anweisung

Das Wechseln der Groß-/Kleinschreibung ist besser als die Verwendung mehrerer if-else-if-Anweisungen, und der Code ist einfacher zu lesen und zu warten.

16. Führen Sie so wenige Dateioperationen wie möglich aus, obwohl die Dateioperationseffizienz von PHP nicht gering ist. Sie können file_get_contents anstelle von file, fopen, feof, fgets verwenden

17

Verwenden Sie auch PHP-Interna Wie möglich ist die Funktion 18.foreach ist effizienter. Versuchen Sie, foreach anstelle von while und for-Schleife zu verwenden >19.

Deklarieren Sie keine Variablen innerhalb der Schleife, insbesondere keine großen Variablen: Objekte 20

Globale Variablen sollten danach nicht gesetzt werden use; 21. Die Verwendung von ++$i zum Erhöhen von

$i++ ist langsamer als ++$i. Dieser Unterschied ist spezifisch für PHP und gilt nicht für andere Sprachen. 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 Form der Optimierung, wie sie vom PHP-Optimierer von Zend durchgeführt wird.

Verwandte Empfehlungen:


6 effiziente PHP-Frameworks zum Erstellen von Webanwendungen

Lernen Sie die Essenz von PHP, schreiben Sie effizienten PHP-Code für Leistung_PHP-Tutorial

Lernen Sie die Essenz von PHP, schreiben Sie effizienten PHP-Code für automatische Tests_PHP-Tutorial

Das obige ist der detaillierte Inhalt vonTeilen effizienter PHP-Schreibmethoden. 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