1

in_array と array_search を試しました。検索した配列に両方の値が含まれている場合でも、偽の値が返されました。言うまでもありませんが、「marmotte」を から削除しても$search_this_array、関数は false を返します。

in_array() を 2 回使用するだけで結果を取得できるため、これは緊急事態ではありません。しかし、一度にそれを行う組み込みの方法がない場合、私は驚いています...おそらく配列が交差していますか?

$search_this_array = array('bug','dog','cat','marmotte');
$search_with_array = array('bug','marmotte');
if(in_array($search_with_array,$search_this_array) == true) echo '
in_array = ==true
';
else echo '
in_array === false
';
if(array_search($search_with_array,$search_this_array) == true) echo '
array_search===true
';
else echo '
array_search === false
';
4

1 に答える 1

2

あなたはそれを自分で言いました:array_intersect

<?php
$array1 = array("a" => "green", "red", "blue");
$array2 = array("b" => "green", "yellow", "red");
$result = array_intersect($array1, $array2);
print_r($result);
?>

上記の例では、次のように出力されます。

Array
(
    [a] => green
    [0] => red
)
于 2013-01-16T01:13:53.793 に答える