Normalerweise werden in PHP mehrere Arten von Daten in Arrays eingefügt:
$arr = array(‘apple’, ’banana’);
$arr = array(); $arr[] = ‘apple’; $arr[] = ‘banana’;
$arr = array(‘apple’); array_push($arr, ‘banana’, ‘orange’);
In den meisten Fällen erhalten wir zuerst Daten aus der Datenbank und konvertieren sie dann in Array-Form. Im ersten Fall eignet sich die direkte Zuweisung beim Definieren des Arrays häufig nur für Situationen, in denen die Datenmenge klein und bekannt ist. Daher erfolgt keine Codeoptimierung. Wir sprechen hauptsächlich über den zweiten und dritten Fall.
Wir haben php 7.2
zum Testen ohne Konfigurationsoptimierung verwendet. Testmethode: Definieren Sie ein Array und fügen Sie 100.000 Datensätze mit der zweiten bzw. dritten Methode ein. Der Code lautet ungefähr wie folgt:
convert
Funktion wird verwendet, um die Speichernutzung zu überprüfen. Die laufenden Ergebnisse sind wie folgt:
Durch mehrmaliges Ausführen des obigen Codes, Sie können feststellen, dass die direkte Zuweisung von Array-Variablen etwa 0.0045
dauert, während die Verwendung von array_push
etwa 0.006
dauert. Der Speicherverbrauch ist gleich, da beide 100.000 Datensätze haben.
Beim Vergleich der beiden Methoden haben wir festgestellt, dass Methode zwei tatsächlich schneller ist als der Aufruf von array_push
, da der Funktionsaufruf in jeder Schleife einige Zeit in Anspruch nimmt, aber wenn ich mir nur den obigen Test ansehe, glaube ich nicht, dass das so ist zweite Methode ist schneller als Aufruf
array_push()
Werfen wir einen Blick auf den Unterschied zwischen den beiden key => value
ist ein Funktionsaufruf und der andere nicht. Das heißt, aus Sicht der Codegröße sind die beiden gleich. Aus Sicht der Array-Struktur verwenden wir während des Tests keine Indizes und alle beginnen standardmäßig bei 0. Wenn Sie das array_push()
-Formular zum Einfügen von Daten verwenden möchten, ist $array1[$key] => $x
nicht einfach zu handhaben. In diesem Fall ist es sehr praktisch, Methode 2 zu verwenden:
array_push()
Ich habe immer gesagt, warum array_push
nicht gut ist, aber manchmal ist
$arr = array(‘a’, ’b’); array_push($arr, ‘c’, ‘d’); // $arr = array(‘a’, ’b’, ‘c’, ‘d’);
Verwandte Kurse: PHP-Video-Tutorial
Das obige ist der detaillierte Inhalt vonPHP-Codeoptimierung array_push. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!