Heim > Backend-Entwicklung > PHP-Problem > Fügen Sie verschiedene Arrays in PHP hinzu

Fügen Sie verschiedene Arrays in PHP hinzu

WBOY
Freigeben: 2023-05-24 18:06:09
Original
498 Leute haben es durchsucht

In PHP ist Array ein sehr flexibler und häufig verwendeter Datentyp, der mehrere Werte (Elemente) speichern kann, und diese Werte können von jedem Datentyp sein. Wenn wir verschiedene Arrays hinzufügen müssen, müssen wir die verschiedenen Additionsmethoden und die entsprechenden Vorsichtsmaßnahmen verstehen.

  1. Verwenden Sie die Funktion array_merge(), um Arrays zusammenzuführen.

Die Funktion array_merge() kann zwei oder mehr Arrays zu einem neuen Array zusammenführen Alle Elemente im Eingabearray werden in ein neues Array verschoben, und der Index beginnt wieder bei 0. Die Schlüsselnamen des ursprünglichen Arrays können beibehalten werden, ohne dass die Werte derselben Schlüsselnamen überschrieben werden. Das Folgende ist ein Beispiel:

$array1 = array('a', 'b', 'c');
$array2 = array('d', 'e', 'f');
$array3 = array_merge($array1, $array2);
print_r($array3);
Nach dem Login kopieren

Das Ausgabeergebnis ist:

Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [4] => e
    [5] => f
)
Nach dem Login kopieren

Es ist zu beachten, dass array_merge() gilt, wenn der Wert desselben Schlüsselnamens ein Array ist. Die Funktion wird rekursiv zusammengeführt. Das heißt, sie führt Unterarrays zusammen. Wenn der Schlüsselname eine Zahl ist, wird das zusammengeführte Ergebnis automatisch in ein numerisch indiziertes Array konvertiert.

  1. Verwenden Sie den Operator „+“, um Arrays zusammenzuführen.

In PHP können Sie den Operator „+“ verwenden, um zwei Arrays zu einem neuen Array zusammenzuführen Im Gegensatz zur Funktion array_merge() behält der +-Operator nur die Schlüssel und Werte im linken Array bei und die Werte mit denselben Schlüsselnamen im rechten Array werden ignoriert. Das Folgende ist ein Beispiel:

$array1 = array('a', 'b', 'c');
$array2 = array('d' => 1, 'e', 'f');
$array3 = $array1 + $array2;
print_r($array3);
Nach dem Login kopieren

Die Ausgabe lautet:

Array
(
    [0] => a
    [1] => b
    [2] => c
    [d] => 1
    [1] => e
    [2] => f
)
Nach dem Login kopieren

Es ist zu beachten, dass der +-Operator sie als Zeichenfolgen behandelt, wenn die Schlüsselnamen des Arrays Zeichenfolgen sind Mit assoziativen Arrays verarbeitet. Wenn das Array auf der linken Seite sowohl numerische als auch Zeichenfolgenindexschlüssel enthält, werden die Zeichenfolgenindexschlüssel im rechten Array ignoriert.

  1. Verwenden Sie die Funktion array_merge_recursive(), um Arrays zusammenzuführen (rekursive Zusammenführung)

Wenn der Wert desselben Schlüsselnamens ein Array ist, dann Verwenden Sie die Funktion array_merge(). Beim Zusammenführen wird nur der Wert des entsprechenden Schlüsselnamens im vorherigen Array überschrieben und Unterarrays werden nicht rekursiv zusammengeführt. Wenn Sie Subarrays mit demselben Schlüsselnamen rekursiv zusammenführen müssen, können Sie die Funktion array_merge_recursive() verwenden. Das Folgende ist ein Beispiel:

$array1 = array('a' => array('b'), 'c');
$array2 = array('a' => array('d'), 'e');
$array3 = array_merge_recursive($array1, $array2);
print_r($array3);
Nach dem Login kopieren

Das Ausgabeergebnis ist:

Array
(
    [a] => Array
        (
            [0] => b
            [1] => d
        )

    [0] => c
    [1] => e
)
Nach dem Login kopieren

Es ist zu beachten, dass die Funktion array_merge_recursive() die Unterarrays zusammenführt und die Unterarrays mit dem zusammenführt Gleicher Schlüsselname. Werte werden in einem Array zusammengefasst.

  1. Verwenden Sie die Funktion array_replace(), um Arrays zusammenzuführen (Ersatzzusammenführung).

Die Funktion array_replace() kann zwei oder mehr Arrays zu einem zusammenführen neues Array, aber im Gegensatz zur Funktion array_merge() werden Werte mit demselben Schlüsselnamen durch nachfolgende Werte ersetzt, anstatt in einem Array zusammengeführt zu werden. Das Folgende ist ein Beispiel:

$array1 = array('a', 'b', 'c');
$array2 = array('b', 'd');
$array3 = array_replace($array1, $array2);
print_r($array3);
Nach dem Login kopieren

Das Ausgabeergebnis ist:

Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
)
Nach dem Login kopieren

Es ist zu beachten, dass die Funktion array_replace() den Wert des Schlüsselnamens nur ersetzt, wenn dies der Fall ist Existiert in einem Array. Existiert der Schlüsselname nicht in einem anderen Array, bleibt sein Wert unverändert.

Zusammenfassend bietet PHP eine Vielzahl von Methoden zum Zusammenführen von Arrays, und wir können basierend auf den tatsächlichen Anforderungen auswählen, welche Methode verwendet werden soll. In Situationen, in denen Sie die ursprünglichen Array-Schlüsselnamen beibehalten müssen, können Sie die Funktion array_merge() verwenden; wenn Sie Subarrays rekursiv zusammenführen müssen, können Sie die Funktion array_merge_recursive() verwenden, wenn Sie Werte durch dieselben ersetzen müssen Schlüsselnamen, anstatt sie in einem Array zusammenzuführen, können Sie die Funktion array_replace() verwenden.

Das obige ist der detaillierte Inhalt vonFügen Sie verschiedene Arrays in PHP hinzu. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage