[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Показать все элементы многомерного массива
Gikstol
Привет, как получить все элементы многомерного массива, если неизвестно сколько их там.
Пример:


$arr=array(
1 => array(
3 => array(
'Text' => 2,
'Text2' => array('Text3' => 'Text4'),
),
),
);


//Мы не знаем сколько массивов находится в массиве, не писать же 3000 строк кода данного типа

foreach($arr as $v => $v2){
if(!is_array($v2)){
echo $v.' => '.$v2.'<br>';
}else{
echo $v.' => array(';
foreach($v2 as $v3 => $v4){
//И тут дальше опять проверки массив или нет вывод либо опять foreach
}
echo '),';
}
}




Вообще конечно у меня таких многомерных массивов нет, раньше максимум 5 массивов было - приходилось писать 5 раз проверку (евляется ли переменная массивом или нет), просто мне стало интересно как же разобрать большой многомерный массив если допустим в нем 1000 массивов - не просто массивов, а $arr[][][][][][][][][][] - и так далее.

Мне нужно именно получить данные не вывести их на экран - вывести можно и через var_dump
SerginhoLD
google -> рекурсия

_____________
"internet explorer всех правильней отображает страницы" ©
AllesKlar
Свернутый текст
user posted image


_____________
[продано копирайтерам]
waldicom
почему еще никто написал бессметртное "чтобы понять рекурсию, надо понять рекурсию"?

_____________
Свои мозги еще никто не отменял.
Телепатов нету.
AllesKlar
Цитата (waldicom @ 23.02.2018 - 16:56)
почему еще никто написал бессметртное "чтобы понять рекурсию, надо понять рекурсию"?

Наверное потому, что бессмертное у каждого свое smile.gif
Моё было таким: рекурсия - это рекурсия.

_____________
[продано копирайтерам]
twin
Цитата (AllesKlar @ 23.02.2018 - 14:59)
Моё было таким: рекурсия - это рекурсия.
Прикольнее, как в словаре

*рекурсия - см. "рекурсия".

_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
sergeiss
Gikstol, делаешь функцию, которая разбирает один уровень. Если элемент является массивом, то вызываешь для него эту же функцию (это и есть рекурсия), в ином случае просто выводишь этот элемент.

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
Гость_Gikstol
Понял, спасибо
killer8080
array_walk_recursive
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.