<?php
function multi_array_search($search_for, $search_in) {
foreach ($search_in as $element) {
if (($element === $search_for) || (is_array($element) && multi_array_search($search_for, $element))){
return true;
}
}
return false;
}
$arr = array("2014", array("January", "February", "March"), "2015", array("Monday", "Tuesday"));
echo multi_array_search("Tuesday", $arr) ? 'Found' : 'Not found';
?>
В приведенной выше коде В multi_array_search("Tuesday",$arr);
мы проходим первый параметр является value
и второй параметром является array
, Но мой запрос, что мы проходим первый параметр представляет собой набор значений ,Найти значение массива в пределах многомерного массива
т.е. мы принимаем $array=array("2015","Tuesday","March");
Как это и когда мы нашли значения соответствия, то возвращение «Found» иначе вернуть «Не найден» также значение может быть чувствительным к регистру,
Просто заменив ', если (($ элемент === $ search_for) ...' 'с, если (in_array ($ элемент, $ search_for) ...' должна работать. –
возможный дубликат из [в \ _array() и многомерный массив] (http://stackoverflow.com/questions/4128323/in-array-and-multidimensional-array) – Viral
мы получаем требуемый O/P, – Gopal