Home  >  Article  >  Backend Development  >  PHP finds the difference between 2 arrays

PHP finds the difference between 2 arrays

WBOY
WBOYOriginal
2023-05-19 11:47:371123browse

In PHP, finding the difference between two arrays is a very common operation. A difference set refers to a new array composed of different elements in two arrays.

To implement the difference between two arrays, we can use the array_diff() function provided by PHP. The array_diff() function accepts two or more arrays as parameters and returns a new array composed of elements in the first array that are different from other arrays.

The following is an example that demonstrates how to use the array_diff() function to find the difference between two arrays:

$array1 = array(1, 2, 3, 4, 5);
$array2 = array(1, 3, 5, 7, 9);
$diff = array_diff($array1, $array2);
print_r($diff);

In the above example, we defined two arrays $array1 and $array2 . We use the array_diff() function to find the difference between two arrays, and the result is stored in the $diff variable. Finally, we use the print_r() function to print out the contents of the $diff array.

The output of the above example is as follows:

Array
(
    [1] => 2
    [3] => 4
)

As can be seen from the output result, the difference set results are 2 and 4. These two elements are in $array1 but not in $array2 .

In addition to using the array_diff() function, we can also use loops to implement the difference between two arrays. The following is a sample code that uses a loop to implement a difference set:

$array1 = array(1, 2, 3, 4, 5);
$array2 = array(1, 3, 5, 7, 9);
$diff = array();
foreach ($array1 as $value) {
    if (!in_array($value, $array2)) {
        $diff[] = $value;
    }
}
print_r($diff);

In the above example, we use a foreach loop to traverse each element in the $array1 array. Within the loop body, we use the in_array() function to determine whether the current element exists in the $array2 array. If it does not exist, the current element is added to the $diff array. Finally, we use the print_r() function to print out the contents of the $diff array.

The output result of the above sample code is the same as that of using the array_diff() function:

Array
(
    [0] => 2
    [1] => 4
)

The code for using a loop to implement the difference set, although more cumbersome, may be more efficient in some cases. flexible. Especially when the elements in the array have complex data types, using loops can make it easier to implement targeted difference operations.

In short, to find the difference between two arrays in PHP, you can use the array_diff() function or a loop. The specific choice depends on the actual situation. I hope the above introduction can be helpful to you.

The above is the detailed content of PHP finds the difference between 2 arrays. 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