Home>Article>Backend Development> PHP's 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");
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);
The output of the above code is:
Array ( [0] => foo [2] => baz )
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);
The above code combines $array1 with $array2 and $array3 to return all differences The value, the output result is:
Array ( [0] => foo [2] => baz )
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);
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!