移除步驟:1、利用array_intersect()取得兩個陣列的重複值(交集元素),語法“array_intersect(原始數組1,(原始數組2)”,會傳回一個交集數組;2、使用array_diff()分別將兩個原數組和交集數組進行對比,獲取差集,即刪除重複值,獲取不重複的元素,語法“array_diff(原數組1,交集數組)”和“array_diff(原始數組2 ,交集數組)」。
本教學操作環境:windows7系統、PHP8.1版、DELL G3電腦
怎麼移除兩個數組中都存在的重複值,即交集元素?
例:有這樣兩個數組:
$arr1=array(1,2,3,4,5,6,7,8,9); $arr2=array(2,4,6,8,10,12,14,16);
在兩個數組中都存在的重複值是:
2、4、6、8
怎麼將這幾個重複值去除呢?
在php中,可以利用array_intersect()和array_diff()函數來刪除兩個數組的重複值。
實作步驟:
步驟1:利用array_intersect()函式取得兩個陣列的重複值(交集元素)
array_intersect()函式可以比較兩個陣列的值,並傳回包含重複值的交集陣列。
$intersect=array_intersect($arr1,$arr2); var_dump($intersect);
#步驟2:利用array_diff()函數刪除兩個陣列的重複值(交集元素)
使用array_diff()函數分別將兩個陣列和交集陣列進行對比,取得差集(刪除重複值,取得不重複的元素)。
$diff1=array_diff($arr1,$intersect); $diff2=array_diff($arr2,$intersect); echo "删除交集元素后的两数组:"; var_dump($diff1); var_dump($diff2);
比較一下:
#說明:
array_diff() 函式用於比較兩個(或更多個)數組的值,並傳回差集。
該函數比較兩個(或更多個)數組的值(key=>value 中的value),並傳回一個差集數組,該數組包括了所有在被比較的數組(array1)中,但是不在任何其他參數數組(array2 )中的值。
推薦學習:《PHP視頻教程》
以上是php中兩個陣列怎麼去除重複值的詳細內容。更多資訊請關注PHP中文網其他相關文章!