Ах, без рекурсии !!! даже карта, уменьшить, фильтр включает рекурсию. Это невозможно, если вы не используете некоторые хакские php-пути, как показано ниже. Серьезно, ни один цикл не задействован в коде ниже, извините, если он убил хорошие функции массива :):)
$arr=array(1,2,array(3,4, array(5,6,7), 8), 9);
$json=json_encode($arr);
$hacked_json=str_replace(['[',']'],"",$json);
$hacked_array=json_decode('['.$hacked_json.']');
echo "<pre>";
print_r($hacked_array);
output
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 1
[5] => 2
[6] => 6
[7] => 7
[8] => 8
[9] => 9
)
работает для пары вложенных ключевых значений как скважина
$arr=array(1,2,array(3,4, array(array("s"=>array(1),"w"=>array('q'=>1,'v'=>12)),6,7), 8), 9);
echo "<pre>";
print_r($arr);
$json=json_encode($arr);
$hacked_json=str_replace(['[',']'],"",$json);
$hacked_array=json_decode('['.$hacked_json.']');
echo "<pre>";
print_r(json_decode(json_encode($hacked_array), True));
выход
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => Array
(
[s] => 1
[w] => Array
(
[q] => 1
[v] => 12
)
)
[5] => 6
[6] => 7
[7] => 8
[8] => 9
)