Уроки 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>";
  }
}
?>

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

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

Tags: php

Recent Posts

Признаки качественного хостинга: выбираем с умом

Хостингом называется специальное пространство, предназначенное для хранения файлов веб-сайта. Клиентам доступны разные типы размещения и… Read More

30/09/2020

Как выучить немецкий язык легко и весело? С помощью Beste Freunde!

Немецкий часто считается сложным языком. Да, немецкая лексика имеет «тяжелый» характер. Да, есть действительно очень… Read More

27/09/2020

Отопление и горячая вода – когда нужно, а не когда соизволят включить

Тепло в доме и горячая вода в любое время для многих жителей многоквартирных и частных… Read More

19/09/2020

Инструкция по скачиванию видео с сервиса TikTok (бесплатно и без watermark)

Если вы еще не слышали о TikTok, тогда рекомендуем вам сначала ознакомиться с этим кратким… Read More

17/09/2020

Что есть в бюджетном ноутбуке – на какие характеристики рассчитывать?

Прошли те времена, когда приличный ноутбук стоил от 1000 долларов. Сегодня можно купить довольно неплохой… Read More

16/09/2020

Что лучше – цифровое телевидение Т2 или интернет-телевидение?

Современную жизнь невозможно представить без телевидения. Оно позволяет узнавать о событиях в Украине и мире,… Read More

02/09/2020