我有一个包含350个值的数组(从API中收集)。
现在为了过滤我允许用户选择未知数量的国家。
这方面的一个例子可能是以下
$countries = array
(
0 => 'Denmark',
1 => 'Sweden',
2 => 'United states',
3 => 'Norway'
);
现在我想检查至少其中一个值是否在我的数据数组中
我知道我可以通过遍历所有这些并单独检查每个来完成此操作。但如果我真的想避免这种情况。
那么有没有办法在PHP中做这样的事情?
答案 0 :(得分:4)
php中有很多数组函数。你想要array_intersect
,你可以获得两个数组中列出的所有数据。
答案 1 :(得分:1)
$needles = array(0 => 'Denmark', 1 => 'Sweden');
$haystack = array(0 => 'Denmark', 1 => 'Sweden', 2 => 'United States', 3 => 'Russia');
$found = array_intersect($haystack, $needles);
然后找到$:
array(2) {
[0]=>
string(7) "Denmark"
[1]=>
string(6) "Sweden"
}
您真的需要阅读手册:http://www.php.net/manual/en/function.array-intersect.php