この問題に適切なタイトルを付ける方法は完全にはわかりませんが、配列内にネストされた配列をループする必要があります。配列は他の配列の要素でもある可能性があります。最初は、まだループされていない配列と、「ベース」配列を完全にループする配列にタグを付ける必要があると思いました(ただし、これは不要であり、PHPはこれを任意に行うことがわかっています)。 。問題は少し奇妙に思えます。値が見つからないかどうかをテストするための条件節が省略されている場合、関数は配列内のどこにでもネストされている値を見つけます。その逆も同様です。とにかく、関数は次のとおりです。
function loop($arr, $find) {
for($i=0;$i<count($arr);$i++) {
if($arr[$i] == $find) {
print "Found $find";
return true;
} else {
if(is_array($arr[$i])) {
$this->loop($arr[$i], $find);
} else {
print "Couldn't find $find";
return false;
}
}
}
}