查詢

array_diff_uassoc()函式—用法及示例

「 比較兩個或更多個陣列的鍵值,並返回存在於第一個陣列中但不存在於其他陣列中的鍵值對 」


函式名稱:array_diff_uassoc()

函式描述:該函式用於比較兩個或更多個陣列的鍵值,並返回存在於第一個陣列中但不存在於其他陣列中的鍵值對。

用法:

array_diff_uassoc ( array $array1 , array $array2 [, array $... ], callable $key_compare_func ) : array

引數:

  • $array1: 第一個陣列。
  • $array2: 第二個陣列,與第一個陣列進行比較。
  • $...: 可選引數,可傳入更多的陣列。
  • $key_compare_func: 指定用於比較鍵名的回撥函式。

回撥函式格式:

int callback ( mixed $a, mixed $b )

回撥函式接受兩個引數 $a 和 $b,根據需要,返回一個整數值表示$a與$b的大小關係。當$a == $b時返回0,當$a > $b時返回正數,當$a < $b時返回負數。

示例:

function compareKeys($a, $b) {
    if ($a == $b) {
        return 0;
    } elseif ($a > $b) {
        return 1;
    } else {
        return -1;
    }
}

$array1 = array("a" => "red", "b" => "green", "c" => "blue");
$array2 = array("a" => "red", "b" => "yellow", "c" => "blue");

$result = array_diff_uassoc($array1, $array2, "compareKeys");

print_r($result);

輸出結果:

Array
(
    [b] => green
)

在這個示例中,我們定義了一個回撥函式 compareKeys() 來比較鍵名。然後我們透過使用 array_diff_uassoc() 函式,將 $array1 與 $array2 進行比較。根據鍵名比較的結果,函式返回了 $array1 中不存在於 $array2 中的鍵名對應的鍵值對,即 [b] => green。

補充糾錯
上一個函式: array_diff_key()函式
下一個函式: array_diff_ukey()函式
熱門PHP函式
分享連結