array_diff_assoc

array_diff_assoc() 返回一個數組,該數組包括了所有在 array1 中但是不在任何其它參數數組中的值。注意和 array_diff() 不同的是鍵名也用於比較。

簡介

什麼是array_diff_assoc

array_diff_assoc

(PHP 4 >= 4.3.0, PHP 5)

array_diff_assoc -- 帶索引檢查計算數組的差集

說明

array array_diff_assoc ( array array1, array array2 [, array ...] )

語法

array_diff_assoc( array1,array2,array3...);

參數描述
array1 必需。與其他數組進行比較的第一個數組。
array2 必需。與第一個數組進行比較的數組。
array3,... 可選。與第一個數組進行比較的其他數組。

技術細節

返回值: 返回一個差集數組,該數組包括了所有在被比較的數組( array1)中,但是不在任何其他參數數組( array2或 array3 等等)中的鍵名和鍵值。
PHP 版本: 4.3+

例子

1. array_diff_assoc() 例子

<?php

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

$array2 = array ("a" => "green", "yellow", "red");

$result = array_diff_assoc($array1, $array2);

?>

上例將輸出:

Array

(

[b]=> brown

[c] => blue

[0] => red

)

上面的例子中可以看到鍵值對 "a" => "green" 在兩個數組中都有,因此不在本函式的輸出中。與此不同,鍵值對 0 => "red" 出現在輸出中是因為第二個參數中的 "red" 的鍵名是 1。

鍵值對 key => value 中的兩個值僅在 (string) $elem1 === (string) $elem2 時被認為相等。也就是說使用了嚴格檢查,字元串的表達必須相同。

注: 注意本函式只檢查了多維數組中的一維。當然可以用 array_diff_assoc($array1[0], $array2[0]); 檢查更深的維度。

參見 array_diff(),array_intersect() 和 array_intersect_assoc()。

相關詞條

相關搜尋

熱門詞條

聯絡我們