Підступна війна росії проти України. Орієнтовні втрати ворога
(станом на 16.07.2024)
561400
осіб
361
літаків
326
гелікоптерів
8227
танків
15862
ББМ
15368
артилерія
892
ППО
1119
РСЗВ
20680
машин
28
кораблі і катери
Уроки 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>";
  }
}
?>

 

 

 

От і все. Сподіваємося, що даний урок став вам у нагоді, і ви знайшли його корисним.

Дякуємо, що читаєте нас!

 

 

Напишіть тут свою думку/питання

Ваша пошта не публікуватиметься. Обов’язкові поля позначені *