English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
PHP array_diff_ukey() 函数比较数组,返回两个数组的差集(只比较键名,使用用户自定义的键名比较函数)。
array_diff_ukey()使用用户定义函数仅比较两个(或更多)数组的键,并返回一个数组,该数组包含array1中,但不存在于array2或array3等中的项。
此函数不同于array_diff()函数,因为array_diff()比较值,而此函数比较键。
此函数不同于array_diff_assoc()Funktion, da array_diff_assoc() interne Algorithmen zur Vergleichsindexverwendung verwendet, während diese Funktion eine benutzerdefinierte Funktion verwendet.
array_diff_ukey ( $array1, $array2 , $array3...,callback $key_compare_func] );
Nummer | Parameter und Beschreibung |
---|---|
1 | Array1(Notwendig) Das erste Array ist das Array, das mit anderen Arrays verglichen wird. |
2 | Array2(Notwendig) Es ist ein Array, das mit dem ersten Array verglichen werden soll |
3 | Array3(Optional) Es ist ein Array, das mit dem ersten Array verglichen werden soll |
4 | key_compare_func(Notwendig) Wenn die Vergleichsfunktion bei kleiner, gleich oder größer als dem zweiten Parameter zurückzugeben ist, muss sie entsprechend eine negative, null oder positive Ganzzahl zurückgeben. |
Diese Funktion gibt ein Array zurück, das alle Einträge aus array1alle anderen Arrays fehlenden Einträge enthält.
Diese Funktion wurde erstmals in der PHP-Version5.1in Version 5.0 eingeführt.
array_diff_ukey() und key_compare_func() Beispiel-
<?php function key_compare_func($a, $b) { if ($a === $b) { return 0; } return ($a > $b)? 1: -1; } $input1 = array(0=>"Banane", 1=>"Orange", 2=>"Trauben"); $input2 = array(3=>"Apfel",1=>"Aprikose", 5=>"Mango"); print_r(array_diff_ukey($input1,$input2,"key_compare_func"); ?>Testen Sie heraus‹/›
Ausgabeergebnis:
Array ( [0] => Banane [2] => Trauben )
array_intersect_ukey() Beispiel-
<?php function key_compare_func($a, $b) { if ($a === $b) { return 0; } return ($a > $b)? 1: -1; } $input1 = array('blau' => 1, 'rot' => 2, 'grün' => 3, 'violett' => 4); $input2 = array('grün' => 5, 'blau' => 6, 'gelb' => 7, 'cyan' => 8); print_r(array_diff_ukey($input1,$input2,"key_compare_func"); ?>Testen Sie heraus‹/›
Ausgabeergebnis:
Array ( [rot] => 2 [violett] => 4 )