php刪除陣列中重複值的方法:1、使用array_unique()函數,語法「array_unique(array)」。 2.先用array_flip()函數反轉數組的鍵和值,去掉重複值;然後再用array_flip()將數組反轉回來。
本教學操作環境:windows7系統、PHP8版,DELL G3電腦
php刪除陣列中重複的元素值
方法1:直接使用array_unique()函數
<?php $arr1 = array("a" => "green", "b" => "red", "c" => "green", "d" => "blue","e" => "red"); var_dump($arr1); $arr2 = array_unique($arr1); var_dump($arr2); ?>
輸出:
array (size=5) 'a' => string 'green' (length=5) 'b' => string 'red' (length=3) 'c' => string 'green' (length=5) 'd' => string 'blue' (length=4) 'e' => string 'red' (length=3) array (size=3) 'a' => string 'green' (length=5) 'b' => string 'red' (length=3) 'd' => string 'blue' (length=4)
#說明:
array_unique() 函數用來移除陣列中重複的值。如果兩個或更多個數組值相同,只保留第一個值,其他的值被移除。
註解:被保留的陣列將保持第一個陣列項目的鍵名類型。
語法
array_unique(array)
方法2:使用兩次array_flip()函數
<?php header("content-type:text/html;charset=utf-8"); $arr = array("a" => "green", "b" => "red", "c" => "green", "d" => "blue","e" => "red"); // 输出原始数组 echo "原始数组 :"; var_dump($arr); // 通过使用翻转键和值移除重复值 $arr = array_flip($arr); // 通过再次翻转键和值来恢复数组元素 $arr = array_flip($arr); // 重新排序数组键 $arr = array_values($arr); // 输出更新后的数组 echo "更新数组 :"; var_dump($arr); ?>
輸出:
原始数组 : array (size=5) 'a' => string 'green' (length=5) 'b' => string 'red' (length=3) 'c' => string 'green' (length=5) 'd' => string 'blue' (length=4) 'e' => string 'red' (length=3) 更新数组 : array (size=3) 0 => string 'green' (length=5) 1 => string 'red' (length=3) 2 => string 'blue' (length=4)
說明:
array_flip()是反轉數組鍵和值的函數,它有個特性就是如果數組中有二個值是一樣的,那麼反轉後會保留最後一個鍵和值,利用這個特性就可以間接實現數組的去重了。
語法
array_flip(array);
推薦學習:《PHP影片教學》
以上是php怎麼刪除陣列中重複的元素值的詳細內容。更多資訊請關注PHP中文網其他相關文章!