Коварная война россии против Украины. Ориентировочные потери врага
(по состоянию на 22.09.2022)
55510
солдат
253
самолетов
218
вертолетов
2236
танков
4776
ББМ
1341
артиллерия
169
ПВО
318
РСЗО
3630
машин
15
корабли и катера
Уроки PHP – Многомерный массив

Уроки PHP – Многомерный массив

В сегодняшнем небольшом уроке мы покажем вам, что такое многомерные массивы, как создавать и управлять многомерными массивами в PHP.

Уровень сложности: начальный.

 

 

Введение в многомерный массив 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>";
  }
}
?>

 

 

 

Вот и все. Надеемся, что данный урок пригодился вам, и вы нашли его полезным.

Спасибо, что читаете нас!

 

 

1 комментарий для “Уроки PHP – Многомерный массив

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

Ваш адрес email не будет опубликован.