有什么办法可以检查两个数组是否包含相同的值?
array (size=1)
0 => string '209' (length=3)
array (size=4)
0 => string '209' (length=3)
1 => string '208' (length=3)
2 => string '1' (length=1)
3 => string '2' (length=1)
我想看看是否可以得到209个它们在两个数组中都匹配
答案 0 :(得分:1)
您可以组合使用两个功能。首先是array_intersect,它将选择数组之间的公共值。
$result = array_intersect($array1, $array2);
这也可以包含重复项。因此,在此之后,您可以使用
过滤值 $result = array_unique($result)
这些将是两个数组之间的公共值。
答案 1 :(得分:0)
您可以为此使用in_array功能
$searchVal = '209';
if (in_array($searchVal, $array1) && in_array($searchVal, $array2)) {
echo "$searchVal is in both arrays!";
}
如果您需要大量重复使用此代码,甚至可以将其变成一个函数:
function in_arrays($needle, $array1, $array2) {
if (in_array($needle, $array1) && in_array($needle, $array2)) {
return true;
}
return false;
}
// in use:
$searchVal = '209';
if(in_arrays($searchVal, $firstArray, $secondArray) {
echo "$searchVal is found in both arrays";
}