php去掉數組重複值的方法:1、用第一個數組的每個值和第二個數組比較,如果相同就刪除;2、使用【array_unique()】函數可以移除數組中的重複的值,並傳回結果陣列;3、使用【array_flip()】反轉數組鍵和值的函數。
php去掉陣列重複值的方法:
第一、用陣列循環比較
$arr = array(1,2,4,2,0,9,8,5);//定义一个数组。 $arr1 = $arr; //定义另一个数组和上一个数组一样。 //循环第一个数组让后循环第二个数组,用第一个数组的每个值和第二个数组比较,如果相同就删除,最后输出第二个数组就行了。 for($i = 0;$i<count($arr);$i++){ for($j=$i+1;$j<count($arr);$j++){ if($arr[$i] == $arr[$j]) unset($arr1[$i]); } } echo'<pre class="brush:php;toolbar:false">'; print_r($arr1);
第二、如果允許使用array_uniqe()
函數的話,直接array_uniqe
(直接寫數組名稱就ok)。
在PHP中可以使用內建函數array_unique()來直接刪除重複元素,也可以使用array_flip()函數來間接刪除重複元素。
1.array_unique()
函數
array_unique()函數可以移除陣列中的重複的值,並傳回結果陣列;當幾個數組元素的值相等時,只保留第一個元素,其他的元素被刪除。
程式碼範例:
<?php$result1 = array("a" => "green", "red", "b" => "green", "blue", "red");var_dump($result1);$result2 = array_unique($result1);var_dump($result2);?>
2.array_flip()
函數
array_flip()是反轉陣列鍵與值的函數,它有個特性就是如果數組中有二個值是一樣的,那麼反轉後會保留最後一個鍵和值,利用這個特性我們用他來間接的實現數組的去重。
程式碼範例:
<?phpheader("content-type:text/html; charset=utf-8");$a = array(1, 5, 2, 5, 1, 3, 2, 4, 5);// 输出原始数组echo "原始数组 :";var_dump($a);// 。 通过使用翻转键和值移除重复值$a = array_flip($a); // 通过再次翻转键和值来恢复数组元素$a = array_flip($a);// 重新排序数组键$a = array_values($a);// 输出更新后的数组echo "更新数组 :";var_dump($a);?>
相關學習推薦:PHP程式設計從入門到精通
以上是php如何去掉陣列重複的值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!