PHP 5 Мультимерные массивы

Курс по основам языка программирования PHP.
W3Schools на русском языке. Уроки для начинающих



Ранее в этом учебнике мы описали массивы, представляющие собой единый список пар ключ/значение.

Однако иногда необходимо сохранить значения с более чем одним ключом.

Это может быть сохранено в многомерных массивах.


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

Многомерный массив - это массив, содержащий один или несколько массивов.

PHP понимает многомерные массивы, которые имеют два, три, четыре, пять или более уровней. Однако для большинства людей массивами глубиной более трех уровней трудно управлять.

Размерность массива указывает количество индексов, которые необходимы для выбора элемента.

  • Для двумерного массива вам необходимо два индекса для выбора элемента
  • Для трехмерного массива вам необходимо три индекса, чтобы выбрать элемент

PHP - Двумерные массивы

Двумерный массив - это массив массивов (трехмерный массив - это массив массивов).

Сначала взгляните на следующую таблицу:

Название Склад Продано
Volvo 22 18
BMW 15 13
Saab 5 2
Land Rover 17 15

Можно хранить данные из таблицы выше в двумерном массиве, например так:

$cars = array
  (
  array("Volvo",22,18),
  array("BMW",15,13),
  array("Saab",5,2),
  array("Land Rover",17,15)
  );

Теперь двумерный массив $cars содержит четыре массива и имеет два индекса: строку и столбец.

Чтобы получить доступ к элементам массива $cars, необходимо указать два индекса (строку и столбец):

Пример

<?php
echo $cars[0][0].": In stock: ".$cars[0][1].", sold: ".$cars[0][2].".<br>";
echo $cars[1][0].": In stock: ".$cars[1][1].", sold: ".$cars[1][2].".<br>";
echo $cars[2][0].": In stock: ".$cars[2][1].", sold: ".$cars[2][2].".<br>";
echo $cars[3][0].": In stock: ".$cars[3][1].", sold: ".$cars[3][2].".<br>";
?>
Выполнить пример »

Мы также можем поместить цикл for в другой цикл for, чтобы получить элементы массива $cars (ещё необходимо указать на два показателя)

Пример

<?php
for ($row = 0; $row < 4; $row++) {
  echo "<p><b>Row number $row</b></p>";
  echo "<ul>";
  for ($col = 0; $col < 3; $col++) {
    echo "<li>".$cars[$row][$col]."</li>";
  }
  echo "</ul>";
}
?>
Выполнить пример »

W3Schools на русском уроки для начинающих для новичков основы языка курсы с нуля язык php мультимерные массивы цикл for пример многомерный массив


warning

Не выкладывайте свой код непосредственно в комментариях, он отображается некорректно. Воспользуйтесь такими сервисами, как jsfiddle.net, codepen.io, liveweave.com, jsbin.com, сохраните код на любом из этих сервисов и в комментариях дайте на него ссылку. Так будет виден и код, и результат.