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 )
