Есть многомерный массив, вложенность не известна.
Его нужно просмотреть в txt файле
Как я извратился:
// $arr это !многомерный массив, который нужно посмотреть
$str_arr = http_build_query($arr);
$str_arr = str_replace("&", "\n", $str_arr); // меняем & на \n
$str_arr = urldecode($str_arr);
// далее $str_arr вношу в txt-ый файл и смотрю
implode не подходит, она только для одномерного массива……
Подскажите, наверняка должна же быть какая то функция по перебору многомерных массивов……
Заранее спасибо
Спустя 11 минут, 53 секунды (23.07.2012 - 11:49) Placido написал(а):
Есть более простой способ:
ob_start();
print_r($arr);
$array = ob_get_contents();
file_put_contents('arr.txt', $arr);
Спустя 50 минут, 18 секунд (23.07.2012 - 12:40) sergeiss написал(а):
Цитата (SergSerg @ 23.07.2012 - 12:38) |
Есть многомерный массив, вложенность не известна. |
Для вывода на экран:
echo '<pre>'.print_r( $arr, true).'</pre>';
Если надо, то можешь вывести подобным образом в файл.
Спустя 1 минута, 43 секунды (23.07.2012 - 12:42) SergSerg написал(а):
Цитата (Placido @ 23.07.2012 - 08:49) |
Есть более простой способ:ob_start(); |
Спасибо!
а обязательно в конце данного кода ставить
ob_end_clean(); // очищаем буфер вывода и отключаем буферизацию вывода.
или это лишнее?
Спустя 1 минута, 43 секунды (23.07.2012 - 12:43) SergSerg написал(а):
Цитата (sergeiss @ 23.07.2012 - 09:40) | ||
Для вывода на экран: echo '<pre>'.print_r( $arr, true).'</pre>'; Если надо, то можешь вывести подобным образом в файл. |
ok понял
Спустя 5 минут, 51 секунда (23.07.2012 - 12:49) sergeiss написал(а):
Placido - а зачем такие "изыски" с буферами??? У print_r есть второй параметр, я его не случайно указал. С ним можно в одну строку вывод сделать :)
file_put_contents('arr.txt', print_r($arr, true) );
Спустя 21 минута, 6 секунд (23.07.2012 - 13:10) Placido написал(а):
Цитата (sergeiss @ 23.07.2012 - 12:49) |
Placido - а зачем такие "изыски" с буферами??? У print_r есть второй параметр, я его не случайно указал. С ним можно в одну строку вывод сделать :)file_put_contents('arr.txt', print_r($arr, true) ); |
Действительно. Забыл об этом.
========
Но с другой стороны, с помощью буферизации можно записать в файл результат вывода функции var_dump(), например.
Спустя 45 минут, 23 секунды (23.07.2012 - 13:56) SergSerg написал(а):
Цитата (sergeiss @ 23.07.2012 - 09:49) |
Placido - а зачем такие "изыски" с буферами??? У print_r есть второй параметр, я его не случайно указал. С ним можно в одну строку вывод сделать :)file_put_contents('arr.txt', print_r($arr, true) ); |
ok спасибо
Спустя 17 минут, 46 секунд (23.07.2012 - 14:13) SergSerg написал(а):
Огромное спасибо за такие полные ответы!