Примеры массивов в PHP

php-variablesC теорией покончено, и можно переходить к практике. Все, что вы недопоняли в прошлых постах, в этих постах на примерах вы поймете. В этой заметке мы рассмотрим примеры использования массивов в PHP: создание массивов, добавление элементов, доступ к элементам массива, удаление элементов.

Создание массива в PHP

В отличие от языков со строгой типизацией, где переменную с массивом сначала нужно объявить, указать тип элементов в массиве, в PHP создать массив в 10 раз быстрее.

Для примера возьмем оба типа массивов: $massiv -с неявным присвоением ключей, $man — с явным присвоением ключей:

[source]
<?php
// Создаем пустой массив
$massiv = array();
// Создаем массив с элементами
$man = array(‘name’ => ‘Alex’, ‘age’ => 20);
// Вывод на экран содержимого массивов
print_r($massiv);
print_r($man); ?>
[/source]

Здесь мы используем функцию print_r(). В качестве параметра ей передается массив. Она выводит элементы массива на экран и показывает вложенность.

Добавление элемента к существующему массиву

Давайте добавим в наши 2 созданных массива еще по 1 элементу:

[source]
<?php
// Создаем пустой массив
$massiv = array();
// Создаем массив с элементами
$man = array(‘name’ => ‘Alex’, ‘age’ => 20);
// Добавляем элемент к 1-му массиву
$massiv[] = ‘1-ый элемент массива’;
// Добавляем элемент ко 2-му массиву
$man[‘car’] = ‘bmw’;
// Вывод на экран содержимого массивов
print_r($massiv);
print_r($man); ?>
[/source]

Теперь первый массив ($massiv) имеет 1 элемент, а 2-ой массив ($man) имеет 3 элемента.

Задание: добавить еще по несколько элементов в каждый массив, вывести на экран массивы с помощью print_f() и посмотреть на результат.

Доступ к элементу массива в PHP
Доступ к элементу массива в PHP осуществляет по ключу. Не забываем, что, если у элемента массива не указан ключ, то в качестве ключа берется максимальный числовой индекс и новый ключ будет равен этому максимуму увеличенному на 1.

[source]
<?php
// Создаем массив
$massiv = array(4, ‘второй элемент’);
// Создаем массив с элементами
$man = array(‘name’ => ‘Alex’, ‘age’ = > 20);
// Обращение к элементу массива по числовому ключу
echo «Первый элемент массива: » . $massiv[0];
// Обращение к элементу массива строковому ключу
echo «Сколько чуваку лет: » . $man[‘age’];
?>
[/source]

Для вложенных массивов доступ к элементу работает аналогично:
[source]
<?php
// 2-х мерный массив
// sex — пол, age — возраст, height — рост.
$peoples = array( 1 => array(‘sex’ => ‘male’, ‘age’ => 19), 2 => array(‘sex’ => ‘female’, ‘age’ => 18, ‘height’ => 170));
// Доступ к элементу вложенного массива
echo «Информация о первом человеке: <br />»;
echo «Пол: » . $peoples[1][‘sex’] . «<br />»;
echo «Возраст: » . $peoples[1][‘age’] . «<br />»;
?>
[/source]

В этом примере мы получаем доступ к элементам вложенного массива. »
» — это html тэг для начала новой строки.

Задание: добавить первому человеку информацию о росте (height) и написать код вывода информации о втором человеке. Очень важно именно написать, а не скопировать код. Чем больше вы будет писать (не копировать) код руками, тем быстрее выучите функции и привыкните к синтаксису PHP.

Удаление элемента в массиве
Настало время познакомится с новой функцией — unset. Эта функция PHP используется для удаления переменных (или элемента в массиве) и освобождает занимаемую данными память.

Синтаксис:
[source]
<?php
// Удаление переменной
unset(переменная);
// Удаление элемента массива
unset(массив[индекс]);
?>
[/source]

Рассмотрим на нашем примере:
[source]
<?php
// 2-х мерный массив
// sex — пол, age — возраст, height — рост.
$peoples = array( 1 => array(‘sex’ => ‘male’, ‘age’ => 19), 2 => array(‘sex’ => ‘female’, ‘age’ => 18, ‘height’ => 170));
// Посмотрим, что хранится у нас во втором элементе массива
// Девушка… 18 лет.. Ростом 170 см..
print_r($peoples[2]);
// Удаление информации о росте девушки
unset($peoples[2][‘height’]);
// … а теперь…
print_r($peoples[2]);
?>
[/source]

Продолжение следует….