In PHP, you can use the array_diff
and array_intersect
functions to compare whether two arrays are the same. At the same time, you can also use the ==
or ===
operator to compare whether two arrays are equal.
array_diff
Function array_diff
The function can compare the difference between two arrays, that is, find out the difference between the first Elements that appear in the array but are not present in the second array.
Sample code:
$array1 = array(1, 2, 3); $array2 = array(1, 3, 4); if (count(array_diff($array1, $array2)) == 0 && count(array_diff($array2, $array1)) == 0) { echo "两个数组相同"; } else { echo "两个数组不同"; }
The output result is: The two arrays are different
because element 2 is present in the first array but does not exist in the second array.
array_intersect
Function array_intersect
The function can compare the intersection of two arrays, that is, find out the intersection of the first array elements that appear in and are also present in the second array.
Sample code:
$array1 = array(1, 2, 3); $array2 = array(1, 3, 4); if (count(array_intersect($array1, $array2)) == count($array1) && count(array_intersect($array2, $array1)) == count($array2)) { echo "两个数组相同"; } else { echo "两个数组不同"; }
The output result is: The two arrays are different
because element 2 is present in the first array but does not exist in the second array.
==
and ===
operators==
operations in PHP operator can compare whether the values of two arrays are equal, and the ===
operator can compare whether the values and types of two arrays are equal.
Sample code:
$array1 = array(1, 2, 3); $array2 = array(1, 3, 2); if ($array1 == $array2) { echo "两个数组值相同"; } else { echo "两个数组值不同"; } if ($array1 === $array2) { echo "两个数组值和类型相同"; } else { echo "两个数组值和类型不同"; }
The output result is: The two array values are the same
and The two array values and types are different
. Because the elements of the second array are in a different order but have the same values, the ==
operator is used to compare for equality, and the ===
operator is used to compare for inequality.
Summary:
In PHP, to compare whether two arrays are the same, you can use the array_diff
and array_intersect
functions, and ==
and ===
operators. It should be noted that when using function comparison, you need to pay attention to the order of elements, while when using operator comparison, you need to pay attention to value and type issues. In actual applications, just choose the appropriate method according to your needs.
The above is the detailed content of PHP compares two arrays to see if they are the same. For more information, please follow other related articles on the PHP Chinese website!