Heim > Backend-Entwicklung > PHP-Tutorial > Detailliertes Beispiel für den Unterschied zwischen der PHP-Zusammenführung von Arrays mithilfe des +-Operators und der Array-Funktion array_merge

Detailliertes Beispiel für den Unterschied zwischen der PHP-Zusammenführung von Arrays mithilfe des +-Operators und der Array-Funktion array_merge

伊谢尔伦
Freigeben: 2023-03-10 22:04:01
Original
1529 Leute haben es durchsucht

PHP führt Arrays im Allgemeinen auf zwei Arten zusammen: Eine besteht darin, direkt mithilfe des Pluszeichens hinzuzufügen, die andere darin, die Funktion array_merge zu verwenden, um das auszuführen Außerdem führt array_merge() die Zellen von zwei oder mehr Arrays zusammen und die Werte in einem Array werden an das vorherige Array angehängt. Gibt das resultierende Array zurück. Wenn im Eingabearray derselbe Schlüsselname string vorhanden ist, überschreibt der Wert nach dem Schlüsselnamen den vorherigen Wert. Wenn das Array jedoch numerische Schlüssel enthält, überschreiben die nachfolgenden Werte nicht die ursprünglichen Werte, sondern werden an diese angehängt.

Es gibt einen kleinen Unterschied zwischen den beiden:

Wenn der Array-Schlüsselname ein numerischer Schlüsselname ist, werden die beiden Arrays zusammengeführt Wenn Sie KEY verwenden, überschreibt die Verwendung von array_merge() nicht den ursprünglichen Wert, aber die Verwendung von „+“ zum Zusammenführen von Arrays gibt den ersten Wert als Endergebnis zurück und „verwirft“ diese Werte im Nachfolgende Arrays mit demselben Schlüsselnamen werden deaktiviert (Hinweis: Der zuerst angezeigte Wert wird nicht überschrieben, sondern beibehalten.) Wenn derselbe Array-Schlüsselname ein Zeichen ist, ist der „+“ -Operator derselbe wie wenn der Schlüsselname eine Zahl ist, aber array_merge() überschreibt den vorherigen Wert desselben Schlüsselnamens.

Instanz:

<?php
$array1 = array(1=>&#39;0&#39;); 
$array2 = array(1=> "data"); 
$result1 = $array2 + $array1;/*结果为$array2的值*/ 
print_r($result); 
$result = $array1 + $array2 ;/*结果为$array1的值*/ 
print_r($result); 
$result3 = array_merge($array2,$array1);/*结果为$array2和$array1的值,键名被重新分配*/ 
print_r($result3); 
$result4 = array_merge($array1,$array2);/*结果为$array1和$array2的值,键名被重新分配*/ 
print_r($result4); 
?>
Nach dem Login kopieren

Ausgabeergebnis:

Array 
( 
[1] => data 
) 
Array 
( 
[1] => 0 
) 
Array 
( 
[0] => data 
[1] => 0 
) 
Array 
( 
[0] => 0 
[1] => data 
)
Nach dem Login kopieren

Code:

<?php
$array1 = array(&#39;asd&#39;=>&#39;0&#39;); 
$array2 = array(&#39;asd&#39; => "data"); 
$result1 = $array2 + $array1;/*结果为$array2的值*/ 
print_r($result); 
$result = $array1 + $array2 ;/*结果为$array1的值*/ 
print_r($result); 
$result3 = array_merge($array2,$array1);/*结果为$array1*/ 
print_r($result3); 
$result4 = array_merge($array1,$array2);/*结果为$array2*/ 
print_r($result4);
?>
Nach dem Login kopieren

Ausgabeergebnis:

Array 
( 
[asd] => data 
) 
Array 
( 
[asd] => 0 
) 
Array 
( 
[asd] => 0 
) 
Array 
( 
[asd] => data 
)
Nach dem Login kopieren

1. Die Addition beweist, dass der natürliche Index im Array nicht zurückgesetzt wird.
2 nicht zurückgesetzt. Wird überschrieben
3. Der natürliche Index in der Merge-Funktion wird zurückgesetzt
4. Die Merge-Funktion spielt keine Rolle, die Beziehung zwischen Merge und Merge ist derselbe wie der der früheren Array-Parameter

Das obige ist der detaillierte Inhalt vonDetailliertes Beispiel für den Unterschied zwischen der PHP-Zusammenführung von Arrays mithilfe des +-Operators und der Array-Funktion array_merge. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
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