печатать такой массив? - PullRequest
       16

печатать такой массив?

0 голосов
/ 13 декабря 2011

Как я могу напечатать этот массив var_dump($files); производит это

  array
'Arrow' => 
array
  'Custom' => 
    array
      'original' => 
        array
          ...
      'thumbs' => 
        array
          ...
  'Standard' => 
    array
      'original' => 
        array
          ...
      'thumbs' => 
        array
          ...
'Borders' => 
 array
  'Corners' => 
    array
      'original' => 
        array
          ...
      'thumbs' => 
        array
          ...
  'Embellished Outline' => 
    array
      'original' => 
        array
          ...
      'thumbs' => 
        array
          ...
  'Simple Outline' => 
    array
      'original' => 
        array
          ...
      'thumbs' => 
        array
          ...
  'Solid' => 
    array
      'original' => 
        array
          ...
      'thumbs' => 
        array
          ...
  0 => string 'cannon.gif' (length=10)

Я хочу вывод как Arrow / Custom / thumbs / 053_17_HandLeft.gif

Ответы [ 4 ]

1 голос
/ 13 декабря 2011

Кажется, вы хотите вывести список путей к файлам из некоторой рекурсивной структуры каталогов.Эта функция должна помочь:

function createPaths(array $files, $prefix = '') {
    $paths = array();

    foreach ($files as $folder => $file) {
        if (is_array($file)) {
            $subPaths = createPaths($file, $prefix . $folder . '/');
            $paths = array_merge($paths, $subPaths);
        } else {
            $paths[] = $prefix . $file;
        }
    }

    return $paths;
}

$files = array(
    'Corners' => array(
        'original' => array(
            '1.jpg',
            '2.gif',
        ),
    ),
    'foo.jpg'
);

var_dump(createPaths($files));
1 голос
/ 13 декабря 2011

Для красивой легкой отладки, Kint делает свою работу. Xdebug великолепен, но кажется немного излишним в установке, хотя бы для красивой печати или замены var_dump.

1 голос
/ 13 декабря 2011

Попробуйте XDebug , он заменяет var_dump, чтобы показать это, включая раскраску синтаксиса и отступ.

0 голосов
/ 13 декабря 2011

Попробуйте print_r($files);.Может быть, это расширит все массивы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...