1、array_diff 是對比兩個(或以上數組)的值的差集,注意是對比數組的值,和數組的鍵無關
2、是以第一個數組爲對比對象,找上在第一個數組裏有但其他數組裏沒有的值(可以同值但不同鍵的多個)
<?php
$arr = array();
$arr['a'] = '1';
$arr['b'] = '2';
$arr['c'] = '3';
$arr['d'] = '4';
$arr['e'] = '4';
$arr2 = array();
$arr2['e'] = '1';
$arr2['f'] = '2';
$arr2['g'] = '3';
$arr2['h'] = '2';
$arr2['i'] = '6';
$arr2['j'] = '5';
print_r(array_diff($arr, $arr2));
執行結果是:Array ( [d] => 4 [e] => 4 )
解釋:
1)$arr和$arr2的鍵都不一樣,不管!只管值!!!
2)第一個數組$arr裏值有(1,2,3,4,4),第二數組$arr2裏的值有(1,2,3,2,6,5)
3)$arr裏有4,而$arr2裏沒4,把它揪出來!$arr裏有兩個4怎麼辦,一起揪出來!!
4)$arr2裏有6,5,而$arr裏沒有,要不要管??不管!!!!以第一數組$arr爲準~~
5)所以結果是 Array ( [d] => 4 [e] => 4 )