本文主要和大家分享比較php取得兩個陣列相同和不同元素的方法,希望能幫助大家。
1、取得陣列相同元素
array_intersect()此函數比較兩個(或更多個)陣列的鍵值,並傳回交集數組,此數組包括了所有在被比較的數組(array1)中,
##同時也在任何其他參數陣列(array2 或 array3 等等)中的鍵值。
#
<?php $a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow"); $a2=array("e"=>"red","f"=>"green","g"=>"blue"); $result=array_intersect($a1,$a2); print_r($result); // Array ( [a] => red [b] => green [c] => blue )
<?php
$a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$a2=array("a"=>"red","b"=>"green","c"=>"blue");
$result=array_intersect_assoc($a1,$a2);
print_r($result);
?>
//
Array ( [a] => red [b] => green [c] => blue )
##array_intersect_assoc() 函數用來比較兩個(或更多)陣列的鍵名和鍵值,並傳回交集,與array_intersect() 函數不同的是,本函數除了比較鍵值,
######也比較鍵名。傳回的數組中元素的鍵名保持不變。 ##################<?php $a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow"); $a2=array("a"=>"red","b"=>"green","c"=>"blue"); $result=array_intersect_assoc($a1,$a2); print_r($result); ?> // Array ( [a] => red [b] => green [c] => blue )
2、获取数组中不同元素
array_diff() 函数返回两个数组的差集数组。该数组包括了所有在被比较的数组中,但是不在任何其他参数数组中的键值。
在返回的数组中,键名保持不变。
<?php $a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow"); $a2=array("e"=>"red","f"=>"green","g"=>"blue"); $result=array_diff($a1,$a2); print_r($result); ?> // Array ( [d] => yellow )
array_diff_assoc() 函数用于比较两个(或更多个)数组的键名和键值 ,并返回差集。
<?php $a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow"); $a2=array("a"=>"red","b"=>"green","c"=>"blue"); $result=array_diff_assoc($a1,$a2); print_r($result); // Array ( [d] => yellow )
相关推荐:
php比较两个数组的键值并返回差集的函数array_udiff()
php比较两个数组的键值并返回交集的函数array_intersect()
以上是比較php取得兩個陣列相同和不同元素的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!