Heim  >  Artikel  >  Backend-Entwicklung  >  Ausführliche Erklärung zum Ermitteln der Speichernutzung in PHP

Ausführliche Erklärung zum Ermitteln der Speichernutzung in PHP

jacklove
jackloveOriginal
2018-05-22 15:25:342302Durchsuche

In diesem Artikel wird ausführlich erläutert, wie Sie die Speichernutzung in PHP ermitteln.

Die in PHP integrierte Funktion „memory_get_usage()“ kann die aktuell dem PHP-Skript zugewiesene Speichermenge in Bytes zurückgeben. In der tatsächlichen WEB-Entwicklung sind diese Funktionen sehr nützlich und wir können sie zum Debuggen der PHP-Codeleistung verwenden.

Die Funktion „memory_get_usage()“ gibt die Speichernutzung zurück, die Funktion „memory_get_peak_usage()“ gibt die maximale Speichernutzung zurück und „getrusage()“ gibt die CUP-Nutzung zurück. Bitte beachten Sie jedoch, dass diese Funktionen unter Linux ausgeführt werden müssen.

Sehen wir uns unten ein Beispiel an:

echo'开始内存:'.memory_get_usage(),'';
$tmp=str_repeat('hello',1000);
echo'运行后内存:'.memory_get_usage(),'';
unset($tmp);
echo'回到正常内存:'.memory_get_usage();

Ausgabeergebnis:

Startspeicher: 147296

Nachlaufspeicher: 152456

Rückkehr zum normalen Speicher: 147296

Im Beispiel verwenden wir str_repeat(), um die Zeichenfolge „Hallo“ 1000 Mal zu wiederholen und vergleichen schließlich die vorher und nachher verbrauchte Speichergröße. Wie aus dem obigen Beispiel ersichtlich ist, können Sie zur Reduzierung der Speichernutzung die Funktion unset() verwenden, um nicht mehr benötigte Variablen zu löschen. Ähnlich wie bei der Funktion mysql_free_result() können wir, wenn wir die durch die Datenabfrage erhaltene Ergebnismenge nicht mehr benötigen, sie verwenden, um den von der Abfrage belegten Speicher freizugeben.

Die Funktion „memory_get_usage()“ kann auch einen Parameter, $real_usage, haben, dessen Wert ein boolescher Wert ist. Wenn auf TRUE gesetzt, wird die tatsächlich vom System zugewiesene Speichergröße abgerufen. Wenn es nicht gesetzt oder auf FALSE gesetzt ist, meldet emalloc() die Menge des verwendeten Speichers.

In der tatsächlichen WEB-Entwicklung können Sie PHP memory_get_usage() verwenden, um den von jeder Methode belegten Speicher zu vergleichen und auszuwählen, welche Methode weniger Speicher beansprucht.

Die Anzahl der von der Funktion „memory_get_usage()“ zurückgegebenen Bytes (Einheit: Byte(s)). Die folgende benutzerdefinierte Funktion wandelt die Anzahl der Bytes zur einfacheren Lesbarkeit in MB um:

functionmemory_usage(){
$memory=(!function_exists('memory_get_usage'))'0':round(memory_get_usage()/1024/1024,2).'MB';
return$memory;
}

Häufig verwendete Methoden zum Debuggen und Erkennen der PHP-Codeleistung sind:

memory_get_usage kann den Speicherbedarf analysieren.

Verwenden Sie die Mikrozeitfunktion, um die Programmausführungszeit zu analysieren.

In diesem Artikel wird die Speichernutzung von PHP ausführlich erläutert. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website.

Verwandte Empfehlungen:

Detaillierte Erläuterung der Voroperationen in Thinkphp5

Wie man rekursive PHP-Funktionen effektiv nutzt

Häufig verwendete PHP-Funktionen organisiert

Das obige ist der detaillierte Inhalt vonAusführliche Erklärung zum Ermitteln der Speichernutzung in PHP. 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