array_uintersect_assoc

(PHP 5, PHP 7, PHP 8)

array_uintersect_assoc帶索引檢查計(jì)算數(shù)組的交集,用回調(diào)函數(shù)比較數(shù)據(jù)

說(shuō)明

array_uintersect_assoc(array $array, array ...$arrays, callable $value_compare_func): array

此比較是通過用戶提供的回調(diào)函數(shù)來(lái)進(jìn)行的。如果認(rèn)為第一個(gè)參數(shù)小于,等于,或大于第二個(gè)參數(shù)時(shí)必須分別返回一個(gè)小于零,等于零,或大于零的整數(shù)。

注意和 array_uintersect() 不同的是鍵名也要比較。數(shù)據(jù)是用回調(diào)函數(shù)比較的。

參數(shù)

array

第一個(gè)數(shù)組。

arrays

要比較的數(shù)組。

value_compare_func

在第一個(gè)參數(shù)小于,等于或大于第二個(gè)參數(shù)時(shí),該比較函數(shù)必須相應(yīng)地返回一個(gè)小于,等于或大于 0 的整數(shù)。

callback(mixed $a, mixed $b): int

返回值

返回一個(gè)數(shù)組,該數(shù)組包含了所有在 array 中也同時(shí)出現(xiàn)在所有其它參數(shù)數(shù)組中的值。

范例

示例 #1 array_uintersect_assoc() 例子

<?php
$array1 
= array("a" => "green""b" => "brown""c" => "blue""red");
$array2 = array("a" => "GREEN""B" => "brown""yellow""red");

print_r(array_uintersect_assoc($array1$array2"strcasecmp"));
?>

以上例程會(huì)輸出:

Array
(
    [a] => green
)

參見

  • array_uintersect() - 計(jì)算數(shù)組的交集,用回調(diào)函數(shù)比較數(shù)據(jù)
  • array_intersect_assoc() - 帶索引檢查計(jì)算數(shù)組的交集
  • array_intersect_uassoc() - 帶索引檢查計(jì)算數(shù)組的交集,用回調(diào)函數(shù)比較索引
  • array_uintersect_uassoc() - 帶索引檢查計(jì)算數(shù)組的交集,用單獨(dú)的回調(diào)函數(shù)比較數(shù)據(jù)和索引