Многомерные массивы в PHP

В текущей статье мы с вами рассмотрим несколько примеров использования многомерных массивов в PHP.

Как создать многомерный массив:

Итак, для начала давайте попробуем создать трехмерный массив, состоящий из случайных чисел в диапазоне от 1000 до 2000:

<?php
/* Объявляем трехмерный массив: */
$three_dimensional_array = array();

/*Заполняем трехмерный массив случайными числами: */
for ($a = 0; $a < 3; $a++):
  for ($b = 0; $b < 3; $b++):
    for ($c = 0; $c < 3; $c++):
      $three_dimensional_array[$a][$b][$c] = rand(1000, 2000);
    endfor;
  endfor;
endfor;

/* Выводим содержимое массива: */
print_r($three_dimensional_array);
?>

Получаем нечто подобное:

Array
(
    [0] => Array
        (
            [0] => Array
                (
                    [0] => 1754
                    [1] => 1842
                    [2] => 1780
                )

            [1] => Array
                (
                    [0] => 1088
                    [1] => 1986
                    [2] => 1118
                )

            [2] => Array
                (
                    [0] => 1757
                    [1] => 1083
                    [2] => 1699
                )

        )

    [1] => Array
        (
            [0] => Array
                (
                    [0] => 1979
                    [1] => 1387
                    [2] => 1396
                )

            [1] => Array
                (
                    [0] => 1114
                    [1] => 1267
                    [2] => 1641
                )

            [2] => Array
                (
                    [0] => 1621
                    [1] => 1949
                    [2] => 1327
                )

        )

    [2] => Array
        (
            [0] => Array
                (
                    [0] => 1987
                    [1] => 1852
                    [2] => 1422
                )

            [1] => Array
                (
                    [0] => 1002
                    [1] => 1393
                    [2] => 1682
                )

            [2] => Array
                (
                    [0] => 1253
                    [1] => 1637
                    [2] => 1328
                )

        )

)

Как вывести элемент многомерного массива:

А теперь давайте выведем только содержимое элемента $three_dimensional_array[0][1][1]:

<?php print $three_dimensional_array[0][1][1]; ?>

В данном случае он будет равняться числу 1986:

Вывод элементов многомерного массива

Как вывести все элементы многомерного массива в цикле:

В примере ниже мы с вами осуществляем перебор всех элементов четырехмерного массива  $multidimensional_array посредством циклов for:

<?php
for ($a = 0; $a < 3; $a++)
  for ($b = 0; $b < 3; $b++)
    for ($c = 0; $c < 3; $c++)
      for ($d = 0; $d < 3; $d++)
        echo "[$a][$b][$c][$d]={$multidimensional_array[$a][$b][$c][$d]}\n";
?>

Вместо заключения:

Многомерные массивы в PHP могут иметь любой уровень вложенности. Однако практически вы редко когда встретите array с большим уровнем вложенности элементов чем 3.

Опубликовано 2-04-2013 в 09:49


Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>











Свежие комментарии

  • krasnov8953: к записи Не работает как мне кажется строчка $newTvId = $ »
  • Dimanski: к записи ничего не понимаю. Ставлю ModX на хостинг r01.ru »
  • Дмитрий: к записи Спасибо! Очень выручили. С битриксом беда, а прав »
  • леонид: к записи как сделать что были в ряд? у меня получается по о »
  • Администратор: к записи Статический IP. »
  • Steel: к записи Администратор, вы данную проблему решили подключен »
  • Дмитрий: к записи Хотел узнать как прикрутить данное окно (http://re »

Последние твиты