比較兩個(gè)數(shù)組的鍵名和鍵值(使用內(nèi)建函數(shù)比較鍵名,使用用戶自定義函數(shù)比較鍵值),并返回交集:
<?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"=>"red","b"=>"blue","c"=>"green");
$result=array_uintersect_assoc($a1,$a2,"myfunction")
;
print_r($result);
?>
array_uintersect_assoc() 函數(shù)用于比較兩個(gè)(或更多個(gè))數(shù)組的鍵名和鍵值 ,并返回交集(匹配)。
注釋:該函數(shù)使用內(nèi)建函數(shù)比較鍵名,使用用戶自定義函數(shù)比較鍵值!
該函數(shù)比較兩個(gè)(或更多個(gè))數(shù)組的鍵名和鍵值,并返回一個(gè)交集數(shù)組,該數(shù)組包括了所有在被比較的數(shù)組(array1)中,同時(shí)也在任何其他參數(shù)數(shù)組(array2 或 array3 等等)中的鍵名和鍵值。
注意,與 array_uintersect() 不同的是鍵名也要比較。數(shù)據(jù)(鍵值)是用回調(diào)函數(shù)比較的。
array_uintersect_assoc(array1,array2,array3...,myfunction)
參數(shù) | 描述 |
---|---|
array1 | 必需。與其他數(shù)組進(jìn)行比較的第一個(gè)數(shù)組。 |
array2 | 必需。與第一個(gè)數(shù)組進(jìn)行比較的數(shù)組。 |
array3,... | 可選。與第一個(gè)數(shù)組進(jìn)行比較的其他數(shù)組。 |
myfunction |
必需。字符串值,定義可調(diào)用的比較函數(shù)。 如果第一個(gè)參數(shù)小于等于或大于第二個(gè)參數(shù),則比較函數(shù)必須返回小于等于或大于 0 的整數(shù)。 |
使用用戶自定義的回調(diào)函數(shù) function 來(lái)計(jì)算兩個(gè)或多個(gè)數(shù)組的交集(即在 array1 中存在,同時(shí)也在其它任何數(shù)組中存在的所有數(shù)組元素),并返回結(jié)果數(shù)組。
同時(shí)進(jìn)行鍵名和鍵值的比較,如 "a"=>1 和 "b"=>1 這兩個(gè)元素是不相等的。
function 參數(shù)指定的函數(shù)用于比較元素是否相等。function 函數(shù)帶有兩個(gè)將進(jìn)行比較的參數(shù)。如果第一個(gè)參數(shù)小于第二個(gè)參數(shù),則函數(shù)返回一個(gè)負(fù)數(shù),如果兩個(gè)參數(shù)相等,則要返回 0,如果第一個(gè)參數(shù)大于第二個(gè),則返回一個(gè)正數(shù)。
返回的數(shù)組中鍵名保持不變。
返回值: | 返回一個(gè)數(shù)組,包含所有在 array1 中同時(shí)也在所有其他數(shù)組中的單位。 |
PHP 版本: | 5+ |
如對(duì)本文有疑問(wèn),請(qǐng)?zhí)峤坏浇涣髡搲?,廣大熱心網(wǎng)友會(huì)為你解答!! 點(diǎn)擊進(jìn)入論壇
Powered by 365建站網(wǎng) RSS地圖 HTML地圖
copyright © 2013-2024 版權(quán)所有 鄂ICP備17013400號(hào)