PHP array_diff_ukey() 函數
實例
比較兩個數組的鍵名(使用用戶自定義函數比較鍵名),並返回差集:
<?php function myfunction($a,$b) { if ($a===$b) { return 0; } return ($a>$b)?1:-1; } $a1=array("a"=>"red","b"=>"green","c"=>"blue"); $a2=array("a"=>"blue","b"=>"black","e"=>"blue"); $result=array_diff_ukey($a1,$a2,"myfunction"); print_r($result); ?>
定義和用法
array_diff_ukey() 函數用於比較兩個(或更多個)數組的鍵名,並返回差集。
註釋:該函數使用用戶自定義函數比較鍵名!
該函數比較兩個(或更多個)數組的鍵名,並返回一個差集數組,該數組包括了所有在被比較的數組(array1에 있지만, 다른 어떤 매개변수 배열(array2 또는 array3 중요)의 키 이름.
語法
array_diff_ukey(array1,array2,array3...,myfunction);
參數 | 描述 |
---|---|
array1 | 必需。與其他數組進行比較的第一個數組。 |
array2 | 必需。與第一個數組進行比較的數組。 |
array3,... | 選擇。與第一個數組進行比較的其他數組。 |
myfunction | 必需。定義可調用比較函數的字符串。如果第一個參數小於、等於或大於第二個參數,則該比較函數必須返回小於、等於或大於 0 的整數。 |
설명
array_diff_ukey()는 나타나는 모든 키 이름을 포함한 배열을 반환합니다. array1 에 있지만 다른 어떤 매개변수 배열에도 없는 키 이름의 값을 포함한 값을 반환합니다. 관계는 그대로 유지됩니다. array_diff()와 달리, 비교는 값 대신 키에 따라 수행됩니다.
이 비교는 사용자가 제공한 콜백 함수를 통해 수행됩니다. 첫 번째 매개변수가 두 번째 매개변수보다 작은지, 같은지, 큰지 여부에 따라 각각 음수, 0, 양수를 반환해야 합니다.
기술 세부 사항
반환 값: | 에서 나타나지 않는 키 이름을 포함한 차집합 배열을 반환합니다.array1에 있지만, 다른 어떤 매개변수 배열(array2 또는 array3 중요)의 키 이름. |
PHP 버전: | 5.1+ |
更多实例
예제 1
세 개의 배열의 키 이름을 비교하고 (사용자 정의 함수를 사용하여 키 이름을 비교합니다), 차집합을 반환합니다:
<?php function myfunction($a,$b) { if ($a===$b) { return 0; } return ($a>$b)?1:-1; } $a1=array("a"=>"red","b"=>"green","c"=>"blue"); $a2=array("a"=>"black","b"=>"yellow","d"=>"brown"); $a3=array("e"=>"purple","f"=>"white","a"=>"gold"); $result=array_diff_ukey($a1,$a2,$a3,"myfunction"); print_r($result); ?>