我有一个简单的in_array()
,下面有一个数组作为针示例,但我希望我的示例应该回显;
在数组中找到匹配
鉴于大海捞针中存在两根针。但是,此代码不会产生回声。我希望有人可以帮助我理解为什么我没有在这里得到比赛。
<?php
$needle = array('fjord', 'troz');
$haystack = array('troz', 'zort', 'fran', 'fjord');
if (in_array($needle, $haystack))
{
echo "match found in the array";
}
?>
我已阅读http://php.net/manual/en/function.in-array.php,但我不确定为什么我没有得到匹配。
答案 0 :(得分:3)
为了避免循环,您可以使用array_intersect()
:
if(count(array_intersect($needle, $haystack)))
答案 1 :(得分:1)
因为针是一个数组in_array()
正在大海捞针中寻找一个数组。以下作品:
$needle = array('fjord', 'troz');
//$haystack = array('troz', 'zort', 'fran', 'fjord');
$haystack = array(array("fjord","troz"), array("foo","bar"));
if (in_array($needle, $haystack))
{
echo "match found in the array";
}