查找数组是否至少包含1个值

Fre*_*tow 6 php arrays

我需要在PHP中找出一个数组是否具有另一个数组的任何值.

例如 :

$search_values = array('cat', 'horse', 'dog');
$results = array('cat', 'horse');
if (in_array($search_values, $results))
    echo 'A value was found';
Run Code Online (Sandbox Code Playgroud)

当然,上面的内容并没有真正起作用(in_array).

基本上,基于上面的例子,我想检查$ results数组中是否有,小时.

我是否需要在第一个数组中执行"foreach",然后在2sd中执行"in_array",并返回true; 如果找到了?或者,还有更好的方法?

Zol*_*oth 14

您可能想要使用array_intersect()

$search_values = array('cat', 'horse', 'dog');
$results = array('cat', 'horse');

if ( count ( array_intersect($search_values, $results) ) > 0 ) {
    echo 'BINGO';
} else {
    echo 'NO MATCHES';
}
Run Code Online (Sandbox Code Playgroud)