之前說了array_diff,這次是它的升級版本,php數組差異性比較array_diff_assoc函數,用來比較不同數組中的key 和value的差異並按照索引數組輸出。
使用語法跟array_diff一樣
$newarray = array_diff_assoc($array1,$array2.....);
要注意的也一樣:array_diff_assoc 不能遞歸對比,只能是一維數組,如果數組嵌套數組,則將後面的數組按"數組"比較,就算不同的數組也會相同。
不一樣的而是,這次的比較多了key值,也就是索引值,如果索引不同,也要回到陣列中。
範例:
1.有索引的比較
<?php $array = array("key_name"=>"array","key_function"=>"array_diff_assoc"); $array1 = array("site"=>"forasp","name"=>"网站制作学习网","key_function"=>"array_diff_assoc"); $forasp = array_diff_assoc($array,$array1); print_r($forasp); ?>
結果:
Array ( [key_name] => array //也就是这个key-value 值没有在后面的数组中出现,是个不同值。 )
2.如果是無索引的陣列呢
<?php $array = array("forasp","array","array_diff_assoc"); $array1 = array("forasp","网站制作学习网","array_diff_assoc"); $forasp = array_diff_assoc($array,$array1); print_r($forasp); ?>
結果跟上面的一樣,不同的是這個key變成了索引
Array ( [1] => array //也就是这个key-value 值没有在后面的数组中出现,是个不同值。 )
也就是說在沒有索引的陣列中,比較的是索引id 和value。
array_diff_assoc就介紹完了,它就是array_diff的升級版本吧。
以上是PHP中的array_diff_assoc與array_diff函數實例比較的詳細內容。更多資訊請關注PHP中文網其他相關文章!