Вы можете использовать стандартную библиотеку PHP (SPL) для «скрытия» рекурсии.
$a = array(1,2,array(3,4, array(5,6,7), 8), 9);
$it = new RecursiveIteratorIterator(new RecursiveArrayIterator($a));
foreach($it as $v) {
echo $v, " ";
}
печатает
1 2 3 4 5 6 7 8 9