Heim  >  Artikel  >  Backend-Entwicklung  >  So führen Sie Arrays in PHP zusammen, ohne den Schlüssel zu ändern

So führen Sie Arrays in PHP zusammen, ohne den Schlüssel zu ändern

青灯夜游
青灯夜游Original
2021-07-15 14:00:312633Durchsuche

Methode: 1. Verwenden Sie den Operator „+“, die Syntax lautet „Array 1 + Array 2“. 2. Verwenden Sie die Funktion array_merge_recursive(). Wenn zwei oder mehr Array-Elemente denselben Schlüsselnamen haben, wird kein Schlüssel ausgeführt Beim Überschreiben von Namen werden stattdessen mehrere Werte mit demselben Schlüsselnamen rekursiv in einem Array kombiniert.

So führen Sie Arrays in PHP zusammen, ohne den Schlüssel zu ändern

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

Im Allgemeinen wird array_merge() verwendet, um zwei Arrays in PHP zusammenzuführen

Zum Beispiel:

$data1 = ['111' => 'aaa', '222' => 'bbb', '333' => 'ccc'];
$data2 = ['444' => 'ddd', '555' => 'eee', '666' => 'fff'];
$data = array_merge($data1, $data2);
var_dump($data);

Das Ergebnis ist :

array(6) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(3) "bbb"
  [2]=>
  string(3) "ccc"
  [3]=>
  string(3) "ddd"
  [4]=>
  string(3) "eee"
  [5]=>
  string(3) "fff"
}

Okay Wir sehen, dass die Verwendung von array_merge() den Schlüsselwert zurücksetzt. Wenn der Schlüsselwert für uns nützlich ist und wir ihn nicht zurücksetzen möchten, können wir „+“ verwenden, um die Arrays zusammenzuführen.

$data1 = ['111' => 'aaa', '222' => 'bbb', '333' => 'ccc'];
$data2 = ['444' => 'ddd', '555' => 'eee', '666' => 'fff'];
$data = $data1 + $data2;
var_dump($data);
Erhalten Sie das Ergebnis:

array(6) {
  [111]=>
  string(3) "aaa"
  [222]=>
  string(3) "bbb"
  [333]=>
  string(3) "ccc"
  [444]=>
  string(3) "ddd"
  [555]=>
  string(3) "eee"
  [666]=>
  string(3) "fff"
}

Sie können auch

die Funktion array_merge_recursive verwenden

, um die Zellen eines oder mehrerer Arrays zusammenzuführen, und die Werte in einem Array werden an das vorherige Array angehängt. Gibt das resultierende Array zurück. Diese Funktion ist eine aktualisierte Version von array_merge. Sie fügt die folgenden Funktionen auf Basis von array_merge hinzu: Wenn der Schlüsselwert derselbe ist, ist er derselbe wie array_merge, wenn es sich um eine Zahl handelt; überschreibt nicht mehr das vorherige, sondern wird an der Rückseite angehängt, die Methode wird rekursiv angehängt, zum Beispiel:

 /* array_merge_recursive */
$jiaArr = array(
	'name1'=>'xiaoli',
	'name2'=>'xiaohua',
	'name3'=>'xiaoming',
	'1'=>'teacher',
);
 
$jiaBrr = array(
	'name1'=>'xiaolis',
	'name5'=>'xiaohuas',
	'name6'=>'xiaomings',
	'1'=>'teachers',
);
$jiaAll = array_merge_recursive($jiaArr,$jiaBrr);
var_dump($jiaAll);
 
/*浏览器output:
array(7) {
  ["name1"]=>
  array(2) {
    [0]=>
    string(6) "xiaoli"
    [1]=>
    string(7) "xiaolis"
  }
  ["name2"]=>
  string(7) "xiaohua"
  ["name3"]=>
  string(8) "xiaoming"
  [0]=>
  string(7) "teacher"
  ["name5"]=>
  string(8) "xiaohuas"
  ["name6"]=>
  string(9) "xiaomings"
  [1]=>
  string(8) "teachers"
}
*/

name1 hat beide Arrays, wird aber nicht überschrieben, sondern rekursiv angehängt, 1 Array-Schlüsselwerte sind weiterhin vorhanden nachbestellt;

Empfohlenes Lernen: „

PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonSo führen Sie Arrays in PHP zusammen, ohne den Schlüssel zu ändern. 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