Heim  >  Artikel  >  Backend-Entwicklung  >  Welche Möglichkeiten gibt es, Arrays in PHP zusammenzuführen und Schlüsselwerte beizubehalten?

Welche Möglichkeiten gibt es, Arrays in PHP zusammenzuführen und Schlüsselwerte beizubehalten?

php中世界最好的语言
php中世界最好的语言Original
2018-05-18 11:24:541617Durchsuche

Dieses Mal zeige ich Ihnen, wie Sie Arrays in PHP zusammenführen und Schlüsselwerte beibehalten? , was sind die Vorsichtsmaßnahmen zum Zusammenführen von Arrays in PHP und zum Beibehalten von Schlüsselwerten? Das Folgende ist ein praktischer Fall, schauen wir uns das an.

php führt Arrays zusammen, im Allgemeinen mit der Methode array_merge.

array_merge – Ein oder mehrere Arrays zusammenführen

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

array_merge Die Zellen eines oder mehrerer Arrays zusammenführen. Die Werte in einem Array werden an das vorherige Array angehängt und das Ergebnis ist ein Array .

Wenn im Eingabearray derselbe Schlüsselname Zeichenfolge vorhanden ist, ü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 fortlaufend neu indiziert.

Beispiel 1, Array verwendet Zeichenfolgenschlüsselnamen, derselbe Schlüsselname wird durch das folgende

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

überschrieben Ausgabe:

Array
(
 [name] => terry
)

Beispiel 2: Das Array verwendet numerische Schlüsselnamen, dieselben Schlüsselnamen werden nicht überschrieben und die Schlüsselnamen werden neu indiziert

<?php
$arr1 = array(0=>'fdipzone',1=>'terry');
$arr2 = array(0=>'php',1=>'python');
$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 (Schlüssel). =>Wert), Schlüssel ist die Fragenummer, Wert ist die Antwort und es gibt keine Duplizierung der Fragenummern in den beiden Teilen.

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

<?php
$form_data1 = array(11=>'A',12=>'B',13=>'C',14=>'D');
$form_data2 = array(25=>'B',26=>'A',27=>'D',28=>'C');
$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, um die beiden Teile zusammenzuführen, da die Fragenummer (Schlüssel) eine Zahl ist, der Schlüssel Der Name wird neu indiziert, was zu der Frage „Die Nummer kann nicht reserviert werden“ führt.

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

<?php
$form_data1 = array(11=>'A',12=>'B',13=>'C',14=>'D');
$form_data2 = array(25=>'B',26=>'A',27=>'D',28=>'C');
$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 Der Operator „+“ führt Arrays zusammen und kann die Schlüsselwerte des Arrays beibehalten. Wenn die zusammengeführten Arrays dieselben Schlüsselwerte enthalten, überschreiben die späteren nicht die vorherigen Schlüsselwerte (die ersteren). einer hat Vorrang).

Ich glaube, dass Sie die Methode beherrschen, nachdem Sie den Fall in diesem Artikel gelesen haben. Weitere spannende Informationen finden Sie in anderen verwandten Artikeln auf der chinesischen PHP-Website!

Empfohlene Lektüre:

Wie lassen sich komplexe Verifizierungscodes in PHP generieren?

Detaillierte Erläuterung der Schritte dazu Routing und automatisches Laden von Klassen in PHP implementieren

Das obige ist der detaillierte Inhalt vonWelche Möglichkeiten gibt es, Arrays in PHP zusammenzuführen und Schlüsselwerte beizubehalten?. 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