How to merge arrays and remove duplicates in php

PHPz
Release: 2023-04-19 09:37:45
Original
3219 people have browsed it

In PHP development, when merging arrays, sometimes there are duplicate values ​​in the array, and we want to remove duplicate values ​​from the merged array. How should we deal with this? This article will introduce a simple and practical method that allows you to easily merge arrays and remove duplicates.

Method 1: Use array_merge in combination with array_unique

The array_merge function in PHP merges one or more arrays into one array, which can meet the needs of array merging; while the array_unique function can be removed Duplicate values ​​in the array. Combining these two functions can achieve the functions of merging and deduplication.

The sample code is as follows:

$array1 = array('a', 'b', 'c');
$array2 = array('b', 'c', 'd');
$array3 = array('c', 'd', 'e');

$merged_array = array_merge($array1, $array2, $array3);
$unique_array = array_unique($merged_array);
print_r($unique_array);
Copy after login

The output result is as follows:

Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [4] => e
)
Copy after login
Copy after login
Copy after login

In the above code, three arrays are first defined, namely $array1, $array2 and $array3. Then use the array_merge function to merge these three arrays into one array $merged_array. Then, use the array_unique function to remove duplicate values, and finally get the merged and deduplicated array $unique_array.

Method 2: Use the " " operator

In PHP, you can also use the " " operator to merge two arrays and remove duplicate values. This operator will remove duplicate key values ​​in the first array from the second array.

The sample code is as follows:

$array1 = array('a', 'b', 'c');
$array2 = array('b', 'c', 'd');
$array3 = array('c', 'd', 'e');

$merged_array = $array1 + $array2 + $array3;
print_r($merged_array);
Copy after login

The output result is as follows:

Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [4] => e
)
Copy after login
Copy after login
Copy after login

In the above code, three arrays are first defined, namely $array1, $array2 and $array3. Then use the " " operator to merge these three arrays into one array $merged_array. Since there are duplicate key values ​​in the second array and the first array, the " " operator removes the duplicate key values ​​in the first array. Finally, the merged and deduplicated array $merged_array is obtained.

Method 3: Use array_reduce function

In addition to the above two methods, we can also use the array_reduce function in PHP to merge arrays and remove duplicates. In the array_reduce function, we can customize a callback function for merging arrays to achieve the function of removing duplicate values.

The sample code is as follows:

$array1 = array('a', 'b', 'c');
$array2 = array('b', 'c', 'd');
$array3 = array('c', 'd', 'e');

$merged_array = array_reduce(array($array1, $array2, $array3), function ($merged, $arr) {
    foreach ($arr as $value) {
        if (!in_array($value, $merged)) {
            array_push($merged, $value);
        }
    }
    return $merged;
}, array());

print_r($merged_array);
Copy after login

The output result is as follows:

Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [4] => e
)
Copy after login
Copy after login
Copy after login

In the above code, we use the array_reduce function to merge three arrays into one array. Among them, the first parameter is the array that needs to be processed, the second parameter is the callback function, and the third parameter is the initial value of the callback function. Inside the callback function, we use a foreach loop to iterate through the values ​​in each array and use the in_array function to find whether the value exists in the merged array. If it does not exist, the value is added to the merged array and the final merged result is returned.

To sum up, we can use three methods to merge arrays and remove duplicates in PHP. These methods are array_merge combined with array_unique, using the " " operator and using the array_reduce function. According to different needs and scenarios, we can choose the appropriate method to achieve array merging and deduplication.

The above is the detailed content of How to merge arrays and remove duplicates in php. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template