PHP's array_diff() function: How to compare two arrays and return the difference value

王林
Release: 2023-11-03 13:34:01
Original
883 people have browsed it

PHPs array_diff() function: How to compare two arrays and return the difference value

PHP's array_diff() function: How to compare two arrays and return the difference value, specific code examples are needed

In the PHP language, arrays are the most common data A structure often used to store a set of data or records. When you need to compare the differences between two arrays, PHP provides a convenient function array_diff(), which compares two arrays and returns all different values.

The syntax of the array_diff() function is as follows:

array array_diff ( array $array1 , array $array2 [, array $... ] )

This function accepts two or multiple arrays as arguments, returns a new array containing all distinct values. It works by comparing the values ​​in the first array with the values ​​in the following arrays and returning the values ​​in the first array that are different from the remaining arrays. If a value is the same in all arrays, it will not be returned.

Next we will demonstrate the usage of the array_diff() function through a simple example.

First, let’s define two arrays:

$array1 = array("foo", "bar", "baz");
$array2 = array("bar", "qux");
Copy after login

Of these two arrays, $array1 contains three different strings, while $array2 contains two different strings. where "bar" is the value they share.

Next, we will use the array_diff() function to compare the two arrays and return all the different values:

$diff = array_diff($array1, $array2);
print_r($diff);
Copy after login

The output of the above code is:

Array
(
    [0] => foo
    [2] => baz
)
Copy after login
Copy after login

As you can see, the $diff array contains all values ​​in $array1 that are different from $array2. The value "bar", which exists in both arrays, is not returned.

We can also compare values ​​in multiple arrays by using more array parameters:

$array3 = array("qux", "corge");
$diff = array_diff($array1, $array2, $array3);
print_r($diff);
Copy after login

The above code combines $array1 with $array2 and $array3 to return all differences The value, the output result is:

Array
(
    [0] => foo
    [2] => baz
)
Copy after login
Copy after login

It can be seen that "qux" appearing in the third array is not returned because it also exists in $array2.

In addition, if you need to compare associative arrays, you can use the array_diff_assoc() function. Its usage is similar to array_diff(), but it will also compare the key values ​​in the array.

Finally, it should be noted that the array_diff() function only compares values, not keys. For example, although the following two arrays have the same values, but different key values:

$array1 = array("foo" => 1, "bar" => 2, "baz" => 3);
$array2 = array("qux" => 1, "quux" => 2, "baz" => 3);
Copy after login

When using array_diff() to compare these two arrays, only their values ​​will be compared, not the key values. . Therefore, $array1 and $array2 will be considered different arrays.

To sum up, the array_diff() function is a very convenient array processing function in PHP. It can compare different values ​​between multiple arrays and return a new array. Using this function can help us process arrays more conveniently.

The above is the detailed content of PHP's array_diff() function: How to compare two arrays and return the difference value. 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!