Вступ до 2D-масивів у PHP

Масив - це сукупність елементів будь-якого типу даних. Існує багато типів даних у php, таких як рядок, цілі числа, булеві масиви, масив, об'єкт, ресурс… тощо. 2D масив - це сукупність цих типів даних, головним чином масиву. У PHP є три різних типи 2D-масивів, які є наступними:

  • Числовий масив
  • Асоціативний масив
  • Багатовимірний масив

Ці три масиви пояснюються нижче:

1. Числовий масив: масив з числовим індексом.

Синтаксис :

array(value1, value2, value3, …);

Приклад :

$input = array(10, 20, 30, 40, 50);

2. Асоціативний масив : масив зі строковим або числовим індексом. Елементи цього масиву зберігаються у вигляді пари ключ-значення.

Синтаксис :

array('key1' => 'value1', 'key2' => 'value2', 'key3' => 'value3', …);

Приклад :

$input = array(0 =>Emma, 1=>Alice, 2=>'John');

3. Багатовимірний масив : масив масиву - це багатовимірний масив або 2D масив або вкладений масив. Цей формат - це завжди масив чи масив. І таким чином називається вкладеним масивом.

Синтаксис:

array (
array (elements…),
array (elements…),

)

E xample:

$input = array(
array( "red", "green", "blue" ),
array( "yellow", "black", "white" )
);

У наведеному вище прикладі вхідний масив є прикладом двовимірного масиву. Тут основний масив містить 2 елементи, де кожен елемент є самим далі масивом з 3 елементів.

Як визначити 2D масиви?

Ми дізналися, що у двовимірному масиві елемент значення - це масив, який може мати додаткові масиви. Розміри, згадані в масиві, мають форму рядків і стовпців. Маючи на увазі табличний формат масиву, простіше навчитися визначати ці масиви. Це означає, що якщо це двовимірний масив, будуть використані два індекси, аналогічно, якщо це тривимірний масив, будуть використовуватися три індекси тощо.

Як створити 2D масиви?

Оскільки ми знаємо, як визначити 2D масив, ми можемо створити його зараз. Тут індекс не визначений і за замовчуванням - це число, яке завжди починається з 0.

$input=array(
array( "red", "green", "blue" ),
array( "yellow", "black", "white" )
);

Масив можна також визначити у вигляді асоціативного масиву.

(in key =>value form)

Покажчик або ключ - це рядок, як кольори, фрукти та машини. Елементи значень мають форму масиву, що містить 3 елемента кожен.

$input = array(
'colors'=>array (“Red", "Green", "Blue"),
'fruits'=>array ("Apple", "Orange", "Grapes"),
'cars'=>array (“BMW”, ”Skoda”, ”Mercedes”)
);

Як отримати доступ до елементів 2D-масивів?

Для доступу до цих значень масиву можна скористатися квадратними дужками. По мірі заглиблення в більше рівнів 2D-масиву використання набору квадратних дужок буде збільшуватися з кожним рівнем.

Приклад №1

$input = array (
'colors' =>array (“Red", "Green", "Blue"),
'fruits' =>array ("Apple", "Orange", "Grapes"),
'cars' =>array ("Skoda", "BMW", "Mercedes")
);

Пам'ятайте, що перший набір квадратних дужок містить ключ, який в даному випадку - це кольори, фрукти, машини. Після цього ще один набір квадратних дужок, щоб перейти до наступного рівня, і до нього можна отримати цифри на зразок 0, 1, 2.

Отже, якщо ми хочемо отримати доступ до елемента "Виноград" у вищезгаданому масиві,

echo $input('fruits')(2);

Аналогічно наступні приклади

Якщо ми хочемо отримати доступ до елемента "Mercedes" в масиві, тоді

echo $input('cars')(2);

Якщо ми хочемо отримати доступ до елемента «Червоний» у масиві, тоді

echo $input('colors)(0);

Оскільки індекс завжди починається з 0 в масиві.

Приклад №2

$input = array (
array (“Red", "Green", "Blue"),
array ("Yellow", "Orange", "Purple"),
);

Якщо ми хочемо отримати доступ до елемента «Помаранчевий» у наведеному вище масиві, будемо використовувати наступний рядок

echo $input(0)(1);
will give “Green”
echo $input(1)(2);
will give “Purple”
echo $input(0)(0);
will give “Red”

Як вставити елементи 2D масивів у PHP?

Оскільки ми знаємо, як визначати, створювати та отримувати доступ до елементів масиву, тепер ми дізнаємось, як вставити елементи в масив. У PHP є функції масиву, визначені для роботи над багатовимірними масивами, такими як функція array_push () для вставки, функція array_shift () для видалення тощо.

$input = array (
'colors'=>array (“Red", "Green", "Blue"),
'fruits'=>array ("Apple", "Orange", "Grapes"),
'cars'=>array ("Skoda", "BMW", "Mercedes")
);

Використовуючи функцію print_r (), ми спочатку надрукуємо масив таким, яким він є.

Код:

//create multidimensional array
$input = array (
"colors"=>array ("Red", "Green", "Blue"),
"fruits"=>array ("Apple", "Orange", "Grapes"),
"cars"=>array ("Skoda", "BMW", "Mercedes")
);
// print the multidimensional array
echo "

 ";
print_r ($ введення);
відлуння "
 ";

Вихід:

Тепер, щоб додати елемент до масиву фруктів, який ми будемо використовувати

array_push() function

Синтаксис:

array_push(array, value1, value2…)

Де,

  • Масив - це вхідний масив $
  • value1 - елемент, який потрібно додати до масиву
  • value2, value3, необов’язкові

Приклад №1

Код:

$input = array (
"colors"=>array ("Red", "Green", "Blue"),
"fruits"=>array ("Apple", "Orange", "Grapes"),
"cars"=>array ("Skoda", "BMW", "Mercedes")
);
array_push($input('colors'), "Black");
echo "

 ";
print_r ($ введення);
відлуння "
 ";

Вихід:

У нижченаведеній програмі ми просто видаляємо клавішу «кольори» і виявили, що вона додається до останнього із заданого масиву клавішею 0, як показано на вихідному зображенні.

Приклад №2

Код:

// create multidimensional array
$input = array (
"colors"=>array ("Red", "Green", "Blue"),
"fruits"=>array ("Apple", "Orange", "Grapes"),
"cars"=>array ("Skoda", "BMW", "Mercedes")
);
// adding a value to array
array_push($input, "Black");
// print the multidimensional array
echo "

 ";
print_r ($ введення);
відлуння "
 ";

Вихід:

Приклад №3

Код:

//create multidimensional array
$input = array (
array ("Red", "Green", "Blue"),
array ("Yellow", "Orange", "Purple")
);
//add a color to the array
array_push($input, "Black");
// print the multidimensional array
echo "

 ";
print_r ($ введення);
відлуння "
 ";

Вихід:

Як оновити елементи 2D масивів у PHP?

Для оновлення елемента 2D масиву просто дістаньте ключ від масиву та замініть значення цього ключа в певному масиві.

$input('cars')('Mercedes') = 'Duster';

Приклад №1

Код:

//create multidimensional array
$input = array (
"colors"=>array ("Red", "Green", "Blue"),
"fruits"=>array ("Apple", "Orange", "Grapes"),
"cars"=>array ("Skoda", "BMW", "Mercedes")
);
//update the Mercedes with Duster
$input("cars")(2) = "Duster";
// print the multidimensional array
echo "

 ";
print_r ($ введення);
відлуння "
 ";

Вихід:

Приклад №2

Код:

//create multidimensional array
$input = array (
array ("Red", "Green", "Blue"),
array ("Yellow", "Orange", "Purple")
);
//update the Mercedes with Duster
$input(0)(1) = "White";
// print the multidimensional array
echo "

 ";
print_r ($ введення);
відлуння "
 ";

Вихід:

Як видалити елементи 2D-масивів?

Для видалення елемента 2D масиву ми будемо використовувати array_shift () функцію.

array_shift видаляє та повертає значення першого елемента масиву.

Синтаксис:

array_shift(array)
where
-array is the $input array

Приклад №1

Код:

//create multidimensional array
$input = array (
"colors"=>array ("Red", "Green", "Blue"),
"fruits"=>array ("Apple", "Orange", "Grapes"),
"cars"=>array ("Skoda", "BMW", "Mercedes")
);
//print the removed element
print_r(array_shift($input));

Вихід:

Приклад №2

Код:

//create multidimensional array
$input = array (
array ("Red", "Green", "Blue"),
array ("Yellow", "Orange", "Purple")
);
//print the removed element
print_r(array_shift($input));

Вихід:

Двовимірний в асоціативному масиві

У наступному прикладі ми створили двовимірний масив, що містить інформацію таких книг, як автор книги, тип книги та опубліковані за рік. Також ми дізнаємось, як пройти або пройти цикл через цей масив. Перебираючи багатовимірний масив, ми будемо використовувати вкладений цикл foreach. Значення однієї петлі переднього руху всередині іншої петлі переднього плану. Те ж саме можна зробити і за допомогою петлі.

$input = array(
"The_Alchemist" => array (
"author" => "Paulo Coelho",
"type" => "Fiction",
"published_year" => 1988
),
"Managing_Oneself" => array (
"author" => "Peter Drucker",
"type" => "Non-fiction",
"published_year" => 1999
),
"Measuring_the_World" => array(
"author" => "Daniel Kehlmann",
"type" => "Fiction",
"published_year" => 2005
)
);

Щойно надрукувати вищевказаний масив без циклу дасть нам такий вихід:

Код:

// create multidimensional array
$input = array(
"The_Alchemist" => array (
"author" => "Paulo Coelho",
"type" => "Fiction",
"published_year" => 1988
),
"Managing_Oneself" => array (
"author" => "Peter Drucker",
"type" => "Non-fiction",
"published_year" => 1999
),
"Measuring_the_World" => array(
"author" => "Daniel Kehlmann",
"type" => "Fiction",
"published_year" => 2005
)
);
// print the plain multidimensional array
echo "

 ";
print_r ($ введення);
відлуння "
";

Вихід:

Тепер ми будемо друкувати багатовимірний масив, використовуючи цикл foreach.

Код:

// create multidimensional array
$input = array(
"The_Alchemist" => array (
"author" => "Paulo Coelho",
"type" => "Fiction",
"published_year" => 1988
),
"Managing_Oneself" => array (
"author" => "Peter Drucker",
"type" => "Non-fiction",
"published_year" => 1999
),
"Measuring_the_World" => array(
"author" => "Daniel Kehlmann",
"type" => "Fiction",
"published_year" => 2005
)
);
//foreach to loop the outer array
foreach($input as $book) (
echo "
";
// foreach to loop the inner array
foreach($book as $key=>$value)
(
echo $key." ". $value. "
";
)
)

Вихід:

Висновок

Я сподіваюся, що ця стаття корисна для вивчення понять теми на 2D масиві в PHP. Ця тема охоплює всі поняття, необхідні для розуміння, пов'язаного з 2D-масивом в PHP. Ця тема спрощена за допомогою прикладів із вихідними знімками для посилання. Згідно зі статтею, якщо всі програми добре практикуються, то, безперечно, допоможе зрозуміти поняття легко. Я сподіваюсь, що ця тема стала більш інформативною для отримання більшої кількості знань.

Рекомендовані статті

Це посібник з 2D-масивів у PHP. Тут ми обговорюємо три різні типи масиву в php та як оновлювати, вставляти та видаляти елементи 2D масивів з відповідними прикладами. Ви також можете подивитися наступну статтю.

  1. Для циклу в PHP
  2. Обмін на PHP
  3. Зоряні візерунки в PHP
  4. Константи PHP
  5. Посібник з різних типів даних C #