Home >Backend Development >PHP Problem >How to remove duplicate values from an array in php?
php method to remove duplicate values from an array: 1. Compare each value of the first array with the second array, and delete it if they are the same; 2. Use the [array_unique()] function to remove the array Duplicate values in the array, and return the result array; 3. Use [array_flip()] to reverse the function of array keys and values.
php method to remove duplicate values from an array:
First, use array loop comparison
$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);
Second, if it is allowed to use the array_uniqe()
function, directly array_uniqe
(directly writing the array name is ok).
In PHP, you can use the built-in function array_unique() to directly delete duplicate elements, or you can use the array_flip() function to indirectly delete duplicate elements.
1.array_unique()
Function
array_unique() function can remove duplicate values in the array and return the result array; when When the values of several array elements are equal, only the first element is retained and the other elements are deleted.
Code example:
<?php$result1 = array("a" => "green", "red", "b" => "green", "blue", "red");var_dump($result1);$result2 = array_unique($result1);var_dump($result2);?>
2.array_flip()
Function
array_flip() is to reverse the array keys and values function, it has a feature that if two values in the array are the same, then the last key and value will be retained after the inversion. Using this feature, we use it to indirectly implement deduplication of the array.
Code sample:
<?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);?>
Related learning recommendations: PHP programming from entry to proficiency
The above is the detailed content of How to remove duplicate values from an array in php?. For more information, please follow other related articles on the PHP Chinese website!