How to splice php arrays without duplication

WBOY
Release: 2023-05-19 20:40:36
Original
780 people have browsed it

PHP is a very popular programming language. It has powerful array functions that can perform various operations on arrays. In PHP, array concatenation is a very common operation. However, when we need to concatenate two arrays, duplicate elements are likely to appear. Then what should be done? This article will introduce how to use PHP array functions to splice arrays and avoid duplicate elements.

1. Use the array_merge() function to splice arrays

PHP provides a very convenient function array_merge(), which can be used to merge two or more arrays into a new array. . Its syntax is as follows:

array array_merge ( array $array1 [, array $... ] )
Copy after login

This function can accept two or more arrays as parameters, it will merge all the elements in these arrays into a new array, and return this new array. The following is a simple demonstration:

$array1 = array('a', 'b', 'c');
$array2 = array('d', 'e', 'f');
$result = array_merge($array1, $array2);
print_r($result);
Copy after login

The output result is as follows:

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

Similarly, we can merge three arrays into a new array:

$array1 = array('a', 'b', 'c');
$array2 = array('d', 'e', 'f');
$array3 = array('g', 'h', 'i');
$result = array_merge($array1, $array2, $array3);
print_r($result);
Copy after login

Output result As follows:

Array (
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [4] => e
    [5] => f
    [6] => g
    [7] => h
    [8] => i
)
Copy after login

As you can see from the output, the array_merge() function can merge multiple arrays into one array. However, if two or more arrays have the same elements, those elements will be repeated in the new array.

2. Use the array_unique() function to remove duplicate elements

PHP provides a very convenient array function array_unique(), which can be used to remove duplicate elements from the array and return a new array , only the first occurrence of the element is retained. Its syntax is as follows:

array array_unique ( array $array [, int $sort_flags = SORT_STRING ] );
Copy after login

This function accepts an array as a parameter and returns a new array that does not contain duplicate elements. By default, this function removes duplicate elements and retains the first occurrence. The following is a simple demonstration:

$array = array('a', 'b', 'c', 'a', 'b', 'c');
$result = array_unique($array);
print_r($result);
Copy after login

The output result is as follows:

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

As you can see from the output result, the array_unique() function can remove duplicate elements in the array and return a new array. This new array only retains the first occurrence of the element.

3. Use array_merge() and array_unique() functions to splice arrays

Splicing two arrays into a new array is a very common operation. However, if there are identical elements in both arrays, those elements will be repeated in the new array. In order to avoid this situation, we can first use the array_merge() function to join the two arrays, and then use the array_unique() function to remove duplicate elements. The following is a simple demonstration:

$array1 = array('a', 'b', 'c');
$array2 = array('c', 'd', 'e');
$result = array_unique(array_merge($array1, $array2));
print_r($result);
Copy after login

The output results are as follows:

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

As you can see from the output results, we first use the array_merge() function to splice the $array1 and $array2 arrays into a new array, and then use the array_unique() function to remove duplicate elements, and finally get a new non-duplicate array.

4. Use the array_push() function to splice arrays

PHP also provides another function array_push(), which can be used to push one or more elements into the end of the array. The syntax of this function is as follows:

int array_push ( array &$array , mixed $values [, mixed $... ] );
Copy after login

This function accepts an array as a parameter and pushes one or more elements to the end of the array, returning the length of the new array. The following is a simple demonstration:

$array1 = array('a', 'b', 'c');
$array2 = array('d', 'e', 'f');
foreach($array2 as $value) {
    if(!in_array($value, $array1)) {
        array_push($array1, $value);
       }
}
print_r($array1);
Copy after login

The output result is as follows:

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

As you can see from the output result, we first compare the elements of the $array1 array and the elements of the $array2 array one by one. If This element does not exist in the $array1 array, so we use the array_push() function to push this element into the end of the array, and finally get a new non-duplicate array.

Summary:

Through the above introduction, we can see that the method of splicing arrays without duplication in PHP is very simple. We can use the array functions array_merge() and array_unique() provided by PHP to operate, or we can use the array_push() function to operate. However, it should be noted that when using these functions, we need to fully consider that null values ​​or Boolean values ​​may exist in the array. Because these values ​​can cause some problems when comparing them. Therefore, when using these functions, it is best to judge and filter first to ensure the correctness and reliability of the program.

The above is the detailed content of How to splice php arrays without duplication. 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
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!