Уроки PHP – Многомерный массив
15.03.20 Программы для интернета
В сегодняшнем небольшом уроке мы покажем вам, что такое многомерные массивы, как создавать и управлять многомерными массивами в PHP.
Уровень сложности: начальный
Как вы знаете, массивы представляют собой список пар из ключей и их значений. Обычно ключом является число (или строка в случае ассоциативных массивов), а значением является любой тип данных. И это важно, поскольку это означает, что значением может быть и другой массив. Таким образом, если вы создаете массив, где значения также являются массивами, тогда получается, что вы создали многомерный массив. Опять-таки, значения в этом внутреннем массиве могут быть новым массивом и так далее. Чтобы освежить в памяти основную информацию о массивах в PHP, прочитайте нашу предыдущую статью по данной теме.
Давайте теперь посмотрим на простой пример многомерного массива. Предположим, вы хотите хранить информацию о пользователях. У вас есть много пользователей, и у каждого пользователя есть свои определенные данные, такие как имя, возраст, адрес электронной почты, личный сайт и так далее.
Остап
email: ostap@pochta.com
website: www.sait-ostapa.com
age: 25
Галина
email: galina@pochta.com
website: www.sait-galini.com
age: 36
Степан
email: stepan@pochta.com
website: www.sait-stepana.com
age: 19
Создание многомерного массива в PHP
Теперь давайте посмотрим, как определить такой массив в PHP. Вы можете сделать это небольшими частями, и в этом случае вы сначала определяете подмассивы, а затем добавляете их в основной массив следующим образом:
<?php
$user_01 = array(
«email» => «ostap@pochta.com»,
«website» => «www.sait-ostapa.com»,
«age» => «25»
);
$user_02 = array(
«email» => «galina@pochta.com»,
«website» => «www.sait-galini.com»,
«age» => «36»
);
$user_03 = array(
«email» => «stepan@pochta.com»,
«website» => «www.sait-stepana.com»,
«age» => «19»
);
$userList = array(
«Остап» => $user_01,
«Галина» => $user_02,
«Степан» => $user_03
);
?>
Конечно, вы можете сделать все это только за один шаг, например, так:
<?php
$userList = array(
«Остап» => array(
«email» => «ostap@pochta.com»,
«website» => «www.sait-ostapa.com»,
«age» => «25»
),
«Галина» => array(
«email» => «galina@pochta.com»,
«website» => «www.sait-galini.com»,
«age» => «36»
),
«Степан» => array(
«email» => «stepan@pochta.com»,
«website» => «www.sait-stepana.com»,
«age» => «19»
)
);
?>
Теперь пришло время поработать с нашим новым массивом и попытаться извлечь из него информацию с помощью средств PHP.
Вывод информации из многомерного массива в PHP
На практике сделать вывод данных элемента из многомерного массива не так уж и сложно. Вам просто нужно определять нужное количество ключей, когда вы хотите получить доступ к заданному значению массива. Вы можете сделать это, например, так:
<?php
echo «Возраст Остапа — » . $userList[«Остап»][«age»] . » лет.»;
?>
В некоторых случаях вам может понадобиться вывести всю информацию об определенном пользователе. Вы можете сделать это следующим образом:
<?php
foreach ($userList[«Остап»] as $key => $value) {
echo «Остап $key — $value <br>»;
}
?>
И в качестве последнего примера, мы рассмотрим вариант, когда вам нужно вывести всю информацию из многомерного массива в PHP. В этом случае лучше всего подойдет создание вложенных циклов, например foreach, следующим образом:
<?php
foreach ($userList as $key => $value) {
echo «Текущий пользователь — $key.<br>»;
foreach ($value as $iKey => $iValue) {
echo » —> $iKey — $iValue <br>»;
}
}
?>
Тематическое видео:
Источник: sebweo.com
Читайте также:
Прокомментируете вышенаписанное?