Heim  >  Artikel  >  Backend-Entwicklung  >  PHP-Codeoptimierung array_push

PHP-Codeoptimierung array_push

little bottle
little bottlenach vorne
2019-04-17 10:19:392377Durchsuche

Normalerweise werden in PHP mehrere Arten von Daten in Arrays eingefügt:

  1. Werte direkt beim Definieren zuweisen
$arr = array(‘apple’, ’banana’);
  1. Array verwenden Variablenoperationen
$arr = array();
$arr[] = ‘apple’;
$arr[] = ‘banana’;
  1. Verwenden Sie array_push(), um
$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.

Leistungsvergleich

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:

PHP-Codeoptimierung array_push

PHP-Codeoptimierung array_push

convert Funktion wird verwendet, um die Speichernutzung zu überprüfen. Die laufenden Ergebnisse sind wie folgt:

PHP-Codeoptimierung array_push

PHP-Codeoptimierung array_push

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

Wie viel schneller die dritte Methode ist, ist völlig vernachlässigbar.

In der Tat unterscheidet sich diese Art der Optimierung in den meisten Anwendungen nicht von keiner Optimierung, aber wenn die Anwendung einen Engpass erreicht, kann jede unauffällige Optimierung die Leistung und unsere Struktur des Arrays im Test erheblich verbessern In realen Projekten ist der Datentyp nicht so einfach. Es kann sich um ein verschachteltes Array handeln, und die Größe des Arrays kann mehr als 100.000 betragen.

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

immer noch sehr nützlich. Wenn wir beispielsweise mehrere Elemente gleichzeitig einfügen möchten, können wir es wie folgt verwenden:

$arr = array(‘a’, ’b’);
array_push($arr, ‘c’, ‘d’);
// $arr = array(‘a’, ’b’, ‘c’, ‘d’);
Wie aus dem obigen Vergleich ersichtlich ist, gibt es in PHP viele Methoden zur Array-Interpolation, obwohl jede Methode vorhanden ist Ebenso ist es wichtig zu verstehen, wann jede Methode noch verwendet werden muss.

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!

Stellungnahme:
Dieser Artikel ist reproduziert unter:cnblogs.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen