Heim >Backend-Entwicklung >PHP-Problem >So führen Sie PHP-Arrays zusammen, ohne sie zu überschreiben

So führen Sie PHP-Arrays zusammen, ohne sie zu überschreiben

藏色散人
藏色散人Original
2021-06-11 10:18:003627Durchsuche

So kombinieren Sie PHP-Arrays ohne Überschreiben: Erstellen Sie zunächst eine PHP-Beispieldatei. Verwenden Sie dann die Methode „array_merge($arr1, $arr2);“, um zwei Arrays zusammenzuführen, ohne den gleichen Schlüsselnamen zu überschreiben.

So führen Sie PHP-Arrays zusammen, ohne sie zu überschreiben

Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP-Version 7.1, DELL G3-Computer

Wie füge ich PHP-Arrays zusammen, ohne sie zu überschreiben?Wie füge ich Arrays zusammen und behalte Schlüsselwerte in PHP bei

php führt Arrays zusammen, im Allgemeinen wird die Methode array_merge verwendet.

array_merge – Ein oder mehrere Arrays zusammenführen

array array_merge ( array $array1 [, array $... ] )

array_merge Führt die Zellen eines oder mehrerer Arrays zusammen. Die Werte in einem Array werden an das vorherige Array angehängt und das resultierende Array wird zurückgegeben.

Wenn das Eingabearray denselben Zeichenfolgenschlüsselnamen hat, überschreibt der Wert nach dem Schlüsselnamen den vorherigen Wert. Wenn das Array jedoch numerische Schlüssel enthält, überschreiben diese nicht den ursprünglichen Wert, sondern werden an diesen angehängt.

Wenn nur ein Array angegeben ist und das Array numerisch indiziert ist, werden die Schlüsselnamen nacheinander neu indiziert.

Beispiel 1, das Array verwendet Zeichenfolgenschlüsselnamen, dieselben Schlüsselnamen werden durch nachfolgende überschrieben

<?php
$arr1 = array(&#39;name&#39;=>&#39;fdipzone&#39;);
$arr2 = array(&#39;name&#39;=>&#39;terry&#39;);
$result = array_merge($arr1, $arr2);
print_r($result);
?>

Ausgabe:

Array
(
    [name] => terry
)

Beispiel 2, das Array verwendet numerische Schlüsselnamen, dieselben Schlüsselnamen werden nicht überschrieben, und Die Schlüsselnamen werden neu geschrieben. Index

<?php
$arr1 = array(0=>&#39;fdipzone&#39;,1=>&#39;terry&#39;);
$arr2 = array(0=>&#39;php&#39;,1=>&#39;python&#39;);
$result = array_merge($arr1, $arr2);
print_r($result);
?>

Ausgabe:

Array
(
    [0] => fdipzone
    [1] => terry
    [2] => php
    [3] => python
)

Aus Arbeitsgründen müssen die Antworten auf die beiden Teile der Multiple-Choice-Fragen im Fragebogen zusammengeführt werden. Die Antworten auf jeden Teil sind Arrays (key=>value), key ist die Fragenummer, value ist die Antwort und es gibt keine Duplizierung der Fragennummern in den beiden Teilen.

Verwenden Sie array_merge, um die beiden Teile der Antwort zusammenzuführen.

<?php
$form_data1 = array(11=>&#39;A&#39;,12=>&#39;B&#39;,13=>&#39;C&#39;,14=>&#39;D&#39;);
$form_data2 = array(25=>&#39;B&#39;,26=>&#39;A&#39;,27=>&#39;D&#39;,28=>&#39;C&#39;);
$result = array_merge($form_data1, $form_data2);
print_r($result);
?>

Ausgabe:

Array
(
    [0] => A
    [1] => B
    [2] => C
    [3] => D
    [4] => B
    [5] => A
    [6] => D
    [7] => C
)

Verwenden Sie array_merge zum Zusammenführen nicht beibehalten.

Methode zum Zusammenführen von Arrays und Beibehalten von Schlüsselwerten:

<?php
$form_data1 = array(11=>&#39;A&#39;,12=>&#39;B&#39;,13=>&#39;C&#39;,14=>&#39;D&#39;);
$form_data2 = array(25=>&#39;B&#39;,26=>&#39;A&#39;,27=>&#39;D&#39;,28=>&#39;C&#39;);
$result = $form_data1 + $form_data2;
print_r($result);
?>

Ausgabe:

Array
(
    [11] => A
    [12] => B
    [13] => C
    [14] => D
    [25] => B
    [26] => A
    [27] => D
    [28] => C
)

Verwenden Sie den Operator „+“, um Arrays zusammenzuführen, um die Schlüsselwerte des Arrays beizubehalten , werden die folgenden vorherigen Schlüsselwerte nicht überschrieben (vorherige haben Vorrang).

Empfohlenes Lernen: „PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonSo führen Sie PHP-Arrays zusammen, ohne sie zu überschreiben. 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