Вопрос для профи, если такие есть нужен универсальный обработчик массива на своей интерпретации без for-a echa и т д чтобы читал все массивы какие есть вложенные перечислимые и т д вот представил код сам массив Код (Text): $mo['ok'] = array(0=>'oden', 1=>'dvwa', 'trah'=>'ah', 'bah'=>'mah', 'nah'=>array('arr'=>'array ry'), 'raz'=>'dva', 'uu', 'uuu', 'raze'=>'raz'); $mo['dok'] = array(0=>'oden', 1=>'dvwa', 'trah'=>'ah', 'bah'=>'mah', 'raz'=>'dva', 'uu', 'uuu', 'raze'=>'raz'); Код (Text): function to($var) { is_array($var[array_keys($var)[0]] ) ? $view .= array_keys($var)[0] . ' / ' .to($var[array_keys($var)[0]] ) : $view .= array_keys($var)[0] .' - ' .$var[array_keys($var)[0]] . ' | ' ; if(array_keys($var)[1]) { $view .= ' <br> ' .to(array_slice($var, 1, count($var)) ); } else { if($var[array_keys($var)[1] ]) { $view .= array_keys($var)[1] .' - ' .$var[ array_keys($var)[1] ] .' | ' . to(array_slice($var, 2, count($var))); } } return $view; } Но базу он не читает ! Как сделать чтобы и базу читал и массив да еще и без foreach - а? вот ниже тоже делает и базу читает только foreach Код (Text): function foo($var) { if(is_string($var)) { return $var; } else { foreach($var as $k=>$value) { if(!is_array($value)) { $view .= $k .' '. $value .'<br>'; } else { foreach(array_values($value) as $key=>$val) { if(is_array($val)) { $view .= foo($val); } else { $view .= array_keys($value)[$key] . ' '.$val.' | '; } } } } } return $view; }
Дело не в боязни а в сравнении, функция вызываемая из самой себя это определённо массив а на выходе имеется гибкость программного кода и универсальность
Функция, вызываемая из самой себя это определенно рекурсия. И снова. В чем причина желания отказа от foreach? Как это связано с гибкостью и универсальностью? Куда уж гибче и универсальнее-то? Ему даже на индексы плевать.
Что такое рекурсия?, машина считает, определение действие единица логической системы = функция Код (Text): 2*Function(){}=function(){}[1]
Посмотри https://secure.php.net/manual/ru/class.recursivearrayiterator.php и в комментариях есть примеры использования
Ох ёб... Окей. Я упорный. Я снова спрошу. --- Добавлено --- И да: Тернарные операторы ТАК не используют. Тернарный оператор используется для построения выражения, возвращающего результат, это не "краткая форма if". Такой код - это индусская жесть. При том, что потом используется if все равно. И да, так нифига и не понятно, что вы хотите и зачем. Что на входе, что на выходе? Простой вопрос же.
Вот вот - на входе эра Unix на выходе эра Windows ... И вот еще - вам напоминает 2*Function(){}=function(8){}[0] что нибудь кроме индуса? мне лично нет...
Автор. Ответь, пожалуйста, на поставленные вопросы. Не надо полемику, не надо демагогию. Просто ответь на вопросы.
Спойлер: [Conus, не читай. @Fell-x27, он видимо курить что-то тяжелое, ты не дождешься от него внятного ответа. Я давно заметил, он говорит загадками. Особенно запомнился момент когда он хотел всех очистить от демонов, или от чего то еще сверхъестественного.
Если человек не хочет, чтобы ему помогли и всячески мешает это делать, на кой черт просить помощь? Эхехе. Окей, умываю руки.