您好,登錄后才能下訂單哦!
如何使用php去掉數組重復的值?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
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>'; 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);?>
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。