So verbessern Sie die PHP-Laufgeschwindigkeit
In diesem Artikel erfahren Sie hauptsächlich, wie Sie die Ausführungsgeschwindigkeit von PHP verbessern können. Es gibt insgesamt mehr als fünfzig Methoden, die allen helfen können.
1, Wenn Sie die Klassenmethode als statisch definieren können, versuchen Sie, sie als statisch , seine Geschwindigkeit erhöht sich fast 4 Mal.
2, $row['id'] Die Geschwindigkeit von beträgt $row[id' ] ist 7 Mal.
3, Echo ist schneller als Drucken und verwenden Sie Mehrere Parameter des Echos
(Anmerkung: bezieht sich auf die Verwendung von Kommas anstelle von Punkten ) Ersetzen Sie die Zeichenfolgenverkettung, z. B. echo$str1,$str2.
4 Bestimmen Sie die maximale Anzahl von Schleifen, bevor Sie die for -Schleife ausführen. Berechnen Sie am besten nicht den Maximalwert jede Schleife. Verwenden Sie stattdessen
foreach .
5 Deregistrieren Sie nicht verwendete Variablen, insbesondere große Arrays, um Speicher freizugeben.
6, vermeiden Sie die Verwendung von __get, __set, __autoload.
7, require_once() ist teuer.
8, schließen Sie Dateien so weit wie möglich ein, da dadurch die Notwendigkeit von PHP Gehen Sie zu include_path , um die Datei schneller zu finden, und die zum Parsen des Betriebssystempfads erforderliche Zeit wird kürzer.
9, Wenn Sie wissen möchten, wann die Ausführung des Skripts beginnt(Anmerkung: Das heißt, der Server empfängt den Client Anfrage ) Zeit, die Verwendung von
$_SERVER['REQUEST_TIME'] ist besser als time( ) .
10, Funktionen ersetzen reguläre Ausdrücke, um dieselbe Funktion zu vervollständigen.
11, str_replace Funktion ist schneller als preg_replace Funktion, aber strtr ist viermal effizienter als die Funktion str_replace . 12
Wenn eine String-Ersetzungsfunktion Arrays oder Zeichen als Parameter akzeptiert und die Parameterlänge nicht zu lang ist, können Sie erwägen, einen zusätzlichen Ersetzungsabschnitt zu schreiben . Kodieren Sie so, dass jeder übergebene Parameter ein Zeichen ist, anstatt nur eine Codezeile zu schreiben. Akzeptieren Sie Arrays als Parameter für Abfrage und Ersetzung.
13
, verwenden Sie die selektive Verzweigungsanweisung (Anmerkung: Groß-/Kleinschreibung wechseln) ist besser als die Verwendung mehrerer if, else if -Anweisungen. 14
, die Verwendung von @ zum Blockieren von Fehlermeldungen ist sehr ineffizient, äußerst ineffizient. 15, öffnen Sie das mod_deflate -Modul von Apache , Sie können das durchsuchen Webseite effizienter beschleunigen.
16 Die Datenbankverbindung sollte geschlossen werden, wenn die Verwendung beendet ist.
17 Fehlermeldungen sind teuer.
18 Das Erhöhen lokaler Variablen in der Methode ist am schnellsten. Fast so schnell wie der Aufruf lokaler Variablen in einer Funktion.
19 Das Erhöhen einer globalen Variablen ist 2 mal langsamer als das Erhöhen einer lokalen Variablen.
20, eine Objekteigenschaft erhöhen (z. B.: $this->prop++) ist 3 mal langsamer als das Inkrementieren einer lokalen Variablen.
21, Das Erhöhen einer undefinierten lokalen Variablen ist langsamer als das Erhöhen einer vordefinierten lokalen Variablen9 auf 10 Mal.
22 Das bloße Definieren einer lokalen Variablen, ohne sie in einer Funktion aufzurufen, verlangsamt ebenfalls die Geschwindigkeit ( Entspricht dem Erhöhen einer
lokalen Variablen ). PHP wird wahrscheinlich prüfen, ob globale Variablen vorhanden sind.
23, Methodenaufrufe scheinen unabhängig von der Anzahl der in der Klasse definierten Methoden zu sein, da ich ( vor dem Testen die Methode Danach )hinzugefügt
und 10 Methoden hinzugefügt, aber es gibt keine Änderung in der Leistung.
24, Methoden in abgeleiteten Klassen werden schneller ausgeführt als dieselben Methoden, die in Basisklassen definiert sind.
25 Der Aufruf einer leeren Funktion mit einem Parameter dauert genauso lange wie die Ausführung von 7 bis 8 lokale Variableninkrementoperationen
Mal. Ein ähnlicher Methodenaufruf erfordert nahezu 15 Inkrementierungsoperationen für lokale Variablen.
26, Apache braucht länger zum Parsen eines PHP -Skripts als Das Parsen einer statischen HTML -Seite ist um 2 bis 10 langsamer.
Verwenden Sie so oft wie möglich statische HTML--Seiten und verwenden Sie weniger Skripte.
27, Sofern das Skript nicht zwischengespeichert werden kann, wird es bei jedem Aufruf neu kompiliert. Die Einführung einer Reihe von PHP -Caching-Mechanismen
kann in der Regel 25 % auf 100 % Leistung, um Kompilierungsaufwand zu vermeiden.
28, versuchen Sie, zwischenzuspeichern, Sie können memcached verwenden. memcached ist ein leistungsstarkes Speicherobjekt-Caching-System, kann verwendet werden, um dynamische
Webanwendungen zu beschleunigen und die Datenbanklast zu reduzieren . Das Zwischenspeichern von Opcodes (OP-Code) ist nützlich, damit das Skript nicht für jede Anfrage neu kompiliert werden muss.
29, Wenn Sie eine Zeichenfolge bearbeiten und überprüfen müssen, ob ihre Länge bestimmte Anforderungen erfüllt, verwenden Sie natürlich strlen() Funktion. Diese Funktion wird recht schnell ausgeführt, da sie keine Berechnungen durchführt und lediglich die integrierte Zahl zval -Struktur (C >Verwendete Datenstruktur) zurückgibt um die bekannte Zeichenfolgenlänge zu speichern, die in der PHP
-Variable ) gespeichert ist. Da es sich bei strlen() jedoch um eine Funktion handelt, wird etwas langsam sein, da der Funktionsaufruf viele Schritte durchlaufen muss, beispielsweise Kleinbuchstaben (
Übersetzungshinweis: Dies bedeutet, dass der Funktionsname in Kleinbuchstaben geschrieben ist , PHP
Beim Funktionsnamen wird die Groß-/Kleinschreibung nicht beachtet ), die Hash-Suche wird zusammen mit der aufgerufenen Funktion durchgeführt. In einigen Situationen können Sie den Trick isset()
verwenden, um die Ausführung Ihres Codes zu beschleunigen. Der Aufruf von isset() ist zufällig schneller als strlen(), da sich darin von letzterem unterscheidet isset()
als Sprachkonstrukt bedeutet, dass seine Ausführung keine Funktionssuche und Kleinschreibung erfordert. Das heißt, Sie verbringen tatsächlich nicht viel Aufwand damit, die Stringlänge im Code der obersten Ebene zu überprüfen.
34
, Beim Ausführen des Inkrementierens oder Dekrementierens der Variablen $i , $i++ wird langsamer sein als ++$i . Dieser Unterschied ist PHP -spezifisch und gilt nicht für andere Sprachen. Ändern Sie daher bitte nicht Ihr C
oder Java Code zu erstellen und zu erwarten, dass sie sofort schneller sind, ist nutzlos. ++$i
ist schneller, da nur 3 Anweisungen(Opcodes) , $i++ erfordert 4 Anweisungen. Postfixiertes Inkrement erstellt tatsächlich eine temporäre Variable, die anschließend inkrementiert wird. Das Präfix-Inkrement erhöht direkt um den ursprünglichen Wert. Dies ist eine Form der Optimierung, genau wie das Zend
s PHP -Optimierer. Es ist eine gute Idee, diese Optimierung im Hinterkopf zu behalten, da nicht alle Befehlsoptimierer die gleiche Optimierung durchführen und es viele Anweisungen gibt, die keine Assembly-Optimierungen haben (ISPs) und Server.
35, Es ist nicht unbedingt objektorientiert
(OOP), objektorientiert ist oft sehr teuer, jede Methode und Objektaufrufe verbrauchen viel Speicher.
36 Es ist nicht notwendig, Klassen zu verwenden, um alle Datenstrukturen zu implementieren. 37
, Unterteilen Sie die Methoden nicht zu sehr, sondern überlegen Sie genau, welche Codes Sie wirklich wiederverwenden möchten
?38 Bei Bedarf können Sie den Code jederzeit in Methoden aufteilen.
39, versuchen Sie, eine große Anzahl von PHP
integrierten Funktionen zu verwenden.
40 Wenn der Code eine große Anzahl zeitaufwändiger Funktionen enthält, können Sie die Verwendung der Erweiterung C in Betracht ziehen sie umzusetzen.
41, bewerten und prüfen Sie (Profil) Ihren Code. Der Prüfer verrät Ihnen, welche Teile des Codes wie viel Zeit in Anspruch nehmen.
42, mod_zip kann als Apache -Modul verwendet werden, um Ihre Daten sofort zu komprimieren und kann das Datenübertragungsvolumen um
80 % reduzieren.
43, Sie können file_get_contents anstelle von file, fopen, feof, fgets und andere Methodenreihen, probieren Sie aus Verwenden Sie
file_get_contents, da es viel effizienter ist !, aber seien Sie vorsichtig file_get_contents
PHP Versionsproblem beim Öffnen einer URL -Datei;44
Versuchen Sie, so wenig Dateioperationen wie möglich durchzuführen, obwohl die Dateioperationseffizienz von PHP auch nicht niedrig ist ;45
, optimieren Sie Wählen Sie SQL-Anweisungen aus und führen Sie so wenige Einfügungen, Aktualisierungen wie möglich durch Betrieb;46
, verwenden Sie PHP interne Funktionen(Aber um eine Funktion zu finden, die in PHP nicht existiert, habe ich Zeit verschwendet, die eine benutzerdefinierte Funktion hätte schreiben können, Erfahrung Das Problem ist
!);47
Deklarieren Sie keine Variablen innerhalb der Schleife, insbesondere keine großen Variablen: Object ( Dies ist nicht der Fall scheint der Fall zu sein. PHP sollte auf die Frage
achten?); 48
, versuchen Sie es nicht Um Schleifen in mehrdimensionale Arrays einzubetten, legen Sie die Zuweisung fest;49
, verwenden Sie keine regulären Ausdrücke, wenn Sie PHP verwenden können Interne String-Manipulationsfunktion ;50
, foreach ist effizienter, versuchen Sie, foreach Anstelle von while und for Schleife;51, verwenden Sie einfache Anführungszeichen. Ersetzen Sie doppelte Anführungszeichenzeichenfolgen
;52,
" durch i+= 1 ersetzt i=i+1, was den Gewohnheiten von c/c++ entspricht und mehr ist effizient ”;53, für
globale Variablen sollten sie unset() bei Verwendung. Verwandte Empfehlungen:
Wie man die PHP-Laufgeschwindigkeit verbessert Geschwindigkeit
So verbessern Sie die PHP-Laufgeschwindigkeit
Das obige ist der detaillierte Inhalt vonSo verbessern Sie die PHP-Laufgeschwindigkeit. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

Wenn Sie ein erfahrener PHP-Entwickler sind, haben Sie möglicherweise das Gefühl, dass Sie dort waren und dies bereits getan haben. Sie haben eine beträchtliche Anzahl von Anwendungen entwickelt, Millionen von Codezeilen debuggt und eine Reihe von Skripten optimiert, um op zu erreichen

Visual Studio Code, auch bekannt als VS Code, ist ein kostenloser Quellcode-Editor – oder eine integrierte Entwicklungsumgebung (IDE) –, die für alle gängigen Betriebssysteme verfügbar ist. Mit einer großen Sammlung von Erweiterungen für viele Programmiersprachen kann VS Code c

JWT ist ein offener Standard, der auf JSON basiert und zur sicheren Übertragung von Informationen zwischen Parteien verwendet wird, hauptsächlich für die Identitätsauthentifizierung und den Informationsaustausch. 1. JWT besteht aus drei Teilen: Header, Nutzlast und Signatur. 2. Das Arbeitsprinzip von JWT enthält drei Schritte: Generierung von JWT, Überprüfung von JWT und Parsingnayload. 3. Bei Verwendung von JWT zur Authentifizierung in PHP kann JWT generiert und überprüft werden, und die Funktionen und Berechtigungsinformationen der Benutzer können in die erweiterte Verwendung aufgenommen werden. 4. Häufige Fehler sind Signaturüberprüfungsfehler, Token -Ablauf und übergroße Nutzlast. Zu Debugging -Fähigkeiten gehört die Verwendung von Debugging -Tools und Protokollierung. 5. Leistungsoptimierung und Best Practices umfassen die Verwendung geeigneter Signaturalgorithmen, das Einstellen von Gültigkeitsperioden angemessen.

Dieses Tutorial zeigt, wie XML -Dokumente mit PHP effizient verarbeitet werden. XML (Extensible Markup-Sprache) ist eine vielseitige textbasierte Markup-Sprache, die sowohl für die Lesbarkeit des Menschen als auch für die Analyse von Maschinen entwickelt wurde. Es wird üblicherweise für die Datenspeicherung ein verwendet und wird häufig verwendet

Eine Zeichenfolge ist eine Folge von Zeichen, einschließlich Buchstaben, Zahlen und Symbolen. In diesem Tutorial wird lernen, wie Sie die Anzahl der Vokale in einer bestimmten Zeichenfolge in PHP unter Verwendung verschiedener Methoden berechnen. Die Vokale auf Englisch sind a, e, i, o, u und sie können Großbuchstaben oder Kleinbuchstaben sein. Was ist ein Vokal? Vokale sind alphabetische Zeichen, die eine spezifische Aussprache darstellen. Es gibt fünf Vokale in Englisch, einschließlich Großbuchstaben und Kleinbuchstaben: a, e, ich, o, u Beispiel 1 Eingabe: String = "TutorialPoint" Ausgabe: 6 erklären Die Vokale in der String "TutorialPoint" sind u, o, i, a, o, ich. Insgesamt gibt es 6 Yuan

Statische Bindung (statisch: :) implementiert die späte statische Bindung (LSB) in PHP, sodass das Aufrufen von Klassen in statischen Kontexten anstatt Klassen zu definieren. 1) Der Analyseprozess wird zur Laufzeit durchgeführt.

Was sind die magischen Methoden von PHP? Zu den magischen Methoden von PHP gehören: 1. \ _ \ _ Konstrukt, verwendet, um Objekte zu initialisieren; 2. \ _ \ _ Destruct, verwendet zur Reinigung von Ressourcen; 3. \ _ \ _ Call, behandeln Sie nicht existierende Methodenaufrufe; 4. \ _ \ _ GET, Implementieren Sie den dynamischen Attributzugriff; 5. \ _ \ _ Setzen Sie dynamische Attributeinstellungen. Diese Methoden werden in bestimmten Situationen automatisch aufgerufen, wodurch die Code -Flexibilität und -Effizienz verbessert werden.
