Home  >  Article  >  Backend Development  >  How to delete duplicate elements in an array in php

How to delete duplicate elements in an array in php

PHPz
PHPzOriginal
2023-04-25 18:28:461261browse

In PHP, if we need to remove duplicate elements in an array, there are many ways to do it. In this article, we'll cover the three most common methods.

Method 1: Use array_unique function

The array_unique function is a very simple and very practical function that can delete duplicate elements in an array. Using this function is very simple. You only need to pass the array that needs to be deduplicated as a parameter to the function.

The following is a sample code that uses the array_unique function to delete duplicate elements in an array:

$arr = array("apple", "orange", "banana", "orange");
$newArr = array_unique($arr);
print_r($newArr);

After the code is executed, the following results will be output:

Array
(
    [0] => apple
    [1] => orange
    [2] => banana
)

As you can see, $newArr The duplicate element "orange" in the array has been removed.

Method 2: Use foreach loop and in_array function

Another way to delete duplicate elements in an array is to use foreach loop and in_array function. Loop through the original array and use the in_array function to determine whether the current element already exists in the new array. If it does not exist, add the element to the new array.

The following is a sample code that uses a foreach loop and the in_array function to delete duplicate elements in an array:

$arr = array("apple", "orange", "banana", "orange");
$newArr = array();
foreach ($arr as $item) {
    if (!in_array($item, $newArr)) {
        $newArr[] = $item;
    }
}
print_r($newArr);

After the code is executed, the following results will be output:

Array
(
    [0] => apple
    [1] => orange
    [2] => banana
)

You can also see Arrive, the duplicate element "orange" in the $newArr array has been deleted.

Method 3: Use array_flip function and array_keys function

Using array_flip function and array_keys function can also achieve the effect of deleting duplicate elements in the array. The array_flip function swaps the keys and values ​​in the array to remove duplicate elements, and then uses the array_keys function to extract all the keys in the new array.

The following is a sample code that uses the array_flip function and array_keys function to delete duplicate elements in an array:

$arr = array("apple", "orange", "banana", "orange");
$newArr = array_keys(array_flip($arr));
print_r($newArr);

After the code is executed, the following results will be output:

Array
(
    [0] => apple
    [1] => orange
    [2] => banana
)

You can also see Arrive, the duplicate element "orange" in the $newArr array has been deleted.

Summary

This article introduces three common methods to delete duplicate elements in PHP arrays, including using the array_unique function, using the foreach loop and in_array function, and using the array_flip function and array_keys function. Different methods may be suitable for different situations, and developers can choose the most suitable method to achieve the function of deleting duplicate elements in an array based on actual needs.

The above is the detailed content of How to delete duplicate elements in an array in php. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn