Heim >Backend-Entwicklung >PHP-Problem >So erhalten Sie in PHP unterschiedliche Werte aus zwei Arrays
3 Möglichkeiten, unterschiedliche Werte zu erhalten: 1. Vergleichen Sie die Array-Schlüsselwerte und geben Sie ein Differenzarray mit unterschiedlichen Werten zurück. Die Syntax lautet „array_diff(array 1, array 2)“. 2. Vergleichen Sie die Array-Schlüsselnamen und geben Sie ein Differenz-Array zurück, das verschiedene Werte enthält. Die Syntax lautet „array_diff_key(array 1, array 2)“. 3. Vergleichen Sie den Schlüsselnamen und den Schlüsselwert des Arrays und geben Sie ein Differenzarray mit unterschiedlichen Werten zurück. Die Syntax lautet „array_diff_assoc(array 1, array 2)“.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, PHP-Version 8.1, DELL G3-Computer
php ruft unterschiedliche Werte aus zwei Arrays ab, um die beiden Arrays zu vergleichen und den Differenzsatz zu erhalten .
Beim Vergleichen von Arrays in PHP gibt es drei Situationen: Vergleichen nur von Schlüsselwerten, Vergleichen nur von Schlüsselnamen und Vergleichen von Schlüsselwerten und Schlüsselnamen. Entspricht drei integrierten Funktionen:
array_diff()
array_diff_key()
array_diff_assoc()
Lernen wir es anhand von Beispielen kennen:
1, verwenden Sie array_diff() Funktion – Vergleichen Sie die Schlüsselwerte von Arrays. Die Funktion array_diff() wird verwendet, um die Werte von zwei (oder mehr) Arrays zu vergleichen und die Differenz zurückzugeben.
array_diff(array1,array2,array3...);Diese Funktion vergleicht die Werte von zwei (oder mehr) Arrays (key=>value in value) und gibt ein Differenzarray zurück, das alle Werte im verglichenen Array (array1) enthält. Sondern Werte, die in keinem anderen Parameter-Array (Array2 oder Array3 usw.) liegen.
<?php header("Content-type:text/html;charset=utf-8"); $arr1=array(1,2,3,4,5,6); $arr2=array(2,4,6,8,10,12); var_dump($arr1); var_dump($arr2); echo "两个数组的不同值:"; $result=array_diff($arr1,$arr2); var_dump($result); ?>
2. Verwenden Sie die Funktion array_diff_key() – vergleichen Sie die Schlüsselnamen von Arrays.
Die Funktion array_diff_key() wird verwendet, um die Schlüsselnamen von zwei (oder mehr) Arrays zu vergleichen und die Differenz zurückzugeben.
array_diff_key(array1,array2,array3...);Diese Funktion vergleicht die Schlüssel von zwei (oder mehr) Arrays und gibt ein Differenz-Array zurück, das alle Elemente im verglichenen Array (Array1), aber nicht in einem anderen Parameter-Array (Array2 oder Schlüsselnamen in Array3 usw.) enthält.
<?php header("Content-type:text/html;charset=utf-8"); $arr1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow"); $arr2=array("a"=>"orange","b"=>"green","e"=>"red","r"=>"yellow"); var_dump($arr1); var_dump($arr2); echo "两个数组的不同值:"; $result=array_diff_key($arr1,$arr2); var_dump($result); ?>Im obigen Beispiel sind zwei Schlüsselnamen im Array $arr1 und im Array $arr2 unterschiedlich. Basierend auf dem Array $arr1 ist der Wert „
“c“=>“blue“ code> „ und „<code>“d“=>“gelb“
“, das Ausgabeergebnis lautet also:
"c"=>"blue"
”和“"d"=>"yellow"
”,因此输出的结果为:
3、使用array_diff_assoc()函数--比较数组的键名和键值
array_diff_assoc() 函数用于比较两个(或更多个)数组的键名和键值 ,并返回差集。
array_diff_assoc(array1,array2,array3...);
该函数比较两个(或更多个)数组的键名和键值,并返回一个差集数组,该数组包括了所有在被比较的数组(array1)中,但是不在任何其他参数数组(array2 或 array3 等等)中的键名和键值。
<?php header("Content-type:text/html;charset=utf-8"); $arr1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow"); $arr2=array("a"=>"orange","b"=>"green","e"=>"red","r"=>"yellow"); var_dump($arr1); var_dump($arr2); echo "两个数组的不同值:"; $result=array_diff_assoc($arr1,$arr2); var_dump($result); ?>
上例中,$arr1数组和$arr2数组进行比较,有三个不相同的元素,然后以数组$arr1为准会得到值“"a"=>"red"
”、“"c"=>"blue"
”、“"d"=>"yellow"
rrreeeDiese Funktion vergleicht die Schlüsselnamen und Schlüsselwerte von zwei (oder mehr) Arrays und gibt ein Differenzarray zurück, das alle Elemente im verglichenen Array (Array1) enthält, jedoch nicht in einem anderen Parameterarray ( The Schlüsselname und Schlüsselwert in Array2 oder Array3 usw.).
rrreeeIm obigen Beispiel werden das Array $arr1 und das Array $arr2 verglichen. Es gibt dann drei verschiedene Elemente, basierend auf dem Array $arr1, dem Wert „“a“=>“red“", "
"c"=>"blue"
", ""d"=>"yellow"
", also ist das Ausgabeergebnis:
Das obige ist der detaillierte Inhalt vonSo erhalten Sie in PHP unterschiedliche Werte aus zwei Arrays. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!