Простой способ перебрать многомерный ассоциативный массив и получить из него трубуемые элементы, например по ключу:
function recarray($ar, $searchfor) {
static $result = array();
foreach($ar as $k => $v) {
if ($k == $searchfor) $result[] = $v;
if (is_array($ar[$k])) recarray($v, $searchfor);
}
return $result``;
}
$tst = array (
'bob' => 'Bob MEN',
'google' => array (
'somekey' => 'somevalue',
'bob' => 'big man'
),
'martin' => array(
'bob' => array(
'friend' => true,
'age' => 100500),
'cat' => 'animal'
)
);
$result = recarray($tst, 'bob');
print_r($result);
<!--more-->
<p>
Результатом работы скриптика будет:
</p>
Array
(
[0] => Bob MEN
[1] => big man
[2] => Array
(
[friend] => 1
[age] => 100500
)
)
Это просто ответ на
вопрос на
винграде