Я изменил функцию, которая просматривает массив, чтобы возвращать родительский элемент, если в массиве найдено значение. Он отлично работает для возврата первого найденного предмета, но я хочу, чтобы он возвратил все найденные предметы. Я предполагаю, что это потому, что я возвращаю массив сразу, но я не уверен, как изменить его, чтобы он "вернулся" и возвратил несколько находок.
Функция:
function in_array_r($needle, $haystack) {
foreach ($haystack as $item) {
if ($item === $needle || (is_array($item) && in_array_r($needle, $item))) {
return $item;
}
}
return false;
}