при поиске элемента во вложенном массиве, могу ли я вернуть его индекс вложения 1-го уровня.Как найти элемент в вложенном массиве и получить его индекс вспомогательного массива
<?php
static $cnt = 0;
$name = 'victor';
$coll = array(
'dep1' => array(
'fy' => array('john', 'johnny', 'victor'),
'sy' => array('david', 'arthur'),
'ty' => array('sam', 'joe', 'victor')
),
'dep2' => array(
'fy' => array('natalie', 'linda', 'molly'),
'sy' => array('katie', 'helen', 'sam', 'ravi', 'vipul'),
'ty' => array('sharon', 'julia', 'maddy')
)
);
function recursive_search(&$v, $k, $search_query){
global $cnt;
if($v == $search_query){
/* i want the sub array index to be returned */
}
}
?>
т.е. сказать, если i'am поиск 'триумфатора', я хотел бы иметь 'dep1' в качестве возвращаемого значения. Может ли кто-нибудь помочь?
ваш код работает, вот и все хорошо. но в случае, если мой массив имеет 3 из 4 вложенных уровней, он не будет работать. на самом деле найти решение, которое будет работать на любом уровне вложенности. –
Вам нужно опубликовать весь массив или вы можете найти SO для множества тем по рекурсивному поиску в массивах. –