Как перебрать и вывести многомерный массив на php?

Пользователь

от jaren , в категории: PHP , год назад

Как перебрать и вывести многомерный массив на php?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от bart , год назад

@jaren 

Для перебора и вывода многомерного массива на PHP можно использовать рекурсивную функцию. Вот пример кода:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
function printArray($array, $indent = "") {
    foreach ($array as $key => $value) {
        if (is_array($value)) {
            echo $indent . $key . ":
";
            printArray($value, $indent . "  ");
        } else {
            echo $indent . $key . ": " . $value . "
";
        }
    }
}

// Пример многомерного массива
$array = array(
    "fruit" => "Apple",
    "color" => "Red",
    "nested_array" => array(
        "animal" => "Cat",
        "sound" => "Meow",
    ),
);

printArray($array);


Вывод программы будет следующим:

1
2
3
4
5
fruit: Apple
color: Red
nested_array:
  animal: Cat
  sound: Meow


Функция printArray перебирает элементы массива и проверяет, является ли текущий элемент массивом или нет. Если элемент является массивом, функция вызывается рекурсивно для данного массива с увеличенным отступом. Если элемент не является массивом, просто выводится его ключ и значение.