В этом уроке вы узнаете, как хранить несколько значений в одной переменной в PHP, что такое массивы, какие виды массивов бывают и как ими пользоваться.
Что такое PHP массивы
Массивы - это сложные переменные, которые позволяют нам хранить более одного значения или группы значений под одним именем переменной. Предположим, вы хотите хранить цвета в своем PHP-скрипте. Хранение цветов по одному в переменной может выглядеть примерно так:
<?php $color1 = "Red"; $color2 = "Green"; $color3 = "Blue"; ?>
Но что, если вы хотите хранить названия регионов или городов страны в переменных, и на этот раз их будет не три, а сотни. Хранить каждое название города в отдельной переменной считается плохой практикой, в этом случае вам и понадобится массив PHP.
Типы массивов в PHP
Есть три типа массивов в PHP, которые вы можете создать. Это:
- Индексированный массив - массив с цифровым ключом.ё
- Ассоциативный массив - массив, в котором каждый ключ имеет свое собственное значение.
- Многомерный массив - массив, содержащий один или несколько массивов внутри себя.
Индексированные массивы
Индексированный или числовой массив хранит каждый элемент массива с числовым индексом. В следующих примерах показаны два способа создания индексированного массива, самый простой способ:
<?php // Создание индексированного массива $colors = array("Red", "Green", "Blue"); ?>
Это эквивалентно следующему примеру, в котором индексы назначаются вручную:
<?php $colors[0] = "Red"; $colors[1] = "Green"; $colors[2] = "Blue"; ?>
Ассоциативные массивы
В ассоциативном массиве ключи, назначенные значениям, могут быть произвольными и определяемыми пользователем строками. В следующем примере массив использует ключи вместо индексов:
<?php // Создание ассоциативного массива $ages = array("Vasya"=>22, "Petya"=>32, "Kolya"=>28); ?>
Следующий пример эквивалентен предыдущему примеру, но показывает другой способ создания ассоциативных массивов:
<?php $ages["Vasya"] = "22"; $ages["Petya"] = "32"; $ages["Kolya"] = "28"; ?>
Многомерные массивы
Многомерный массив представляет собой массив, в котором каждый элемент также является массивом, и каждый элемент в подмассиве может быть массивом или дополнительно содержать массив внутри себя и так далее. Пример многомерного массива будет выглядеть примерно так:
<?php // Создание многомерного массива $contacts = array( array( "name" => "Vasya", "email" => "vasya@mail.com", ), array( "name" => "Petya", "email" => "petya@mail.com", ), array( "name" => "Kolya", "email" => "kolya@mail.com", ) ); // Доступ к значению многомерного массива echo "Vasya's email is: " . $contacts[0]["email"]; ?>
Просмотр структуры и значений массива
Вы можете увидеть структуру и значения любого массива, используя одну из двух функций - var_dump() или print_r(). Однако оператор print_r() дает немного меньше информации. Рассмотрим следующий пример:
<?php // Создание массива $cities = array("Moscow", "Paris", "New York"); // Вывод всех элементов массива print_r($cities); ?>
print_r() дает следующий вывод:
Array ( [0] => Moscow [1] => Paris [2] => New York )
Эти выходные данные показывают ключ и значение для каждого элемента в массиве. Чтобы получить больше информации, используйте функцию var_dump():
<?php // Создание массива $cities = array("Moscow", "Paris", "New York"); // Вывод всех элементов массива var_dump($cities); ?>
var_dump() дает следующий вывод:
array(3) { [0]=> string(6) "Moscow" [1]=> string(5) "Paris" [2]=> string(8) "New York" }
Эти выходные данные показывают тип данных каждого элемента, например string(6) (строка состоящая из 6 символов), в дополнение к ключу и значению.
Оставить комментарий