Массив-список создается при первом присваивании определенного значения его элементу:
$my_array[] = “Иван”;
Создается массив-список $my_array, и его начальному элементу (элементу с индексом 0) присваивается значение “Иван”.
Внимание! Нумерация элементов массива-списка начинается с нуля!
К этому массиву можно добавлять другие элементы, используя тот же прием:
$my_array[] = “Иванов”; // элемент с индексом 1
$my_array[] = 25560; // элемент с индексом 2
Типы элементов массива могут быть различными. При добавлении очередного элемента в массив индекс его автоматически увеличивается на единицу (автоинкремент).
При создании массива можно сразу индексировать его элементы по своему усмотрению, причем не обязательно начинать с нуля:
$my_array[1] = “Иван”;
$my_array[2] = “Иванов”;
$my_array[3] = 25560;
Массив может быть создан также с помощью следующих конструкций:
- как список:
$my_array = array (“Иван”, “Иванов”, 25560);
var_damp($my_array); // вывод на экран
На экране появятся индексы в квадратных скобках, типы и значения элементов:
Для вывода на экран элементов массива в PHP используется специальный цикл foreach – для каждого:
{
}
- массив – имя массива,
- значение_элемента – переменная для чтения значения элемента массива.
foreach ($my_array as $value)
{
echo $value;
echo “<BR>”;
}
На экране появится:
Иван Иванов 25560
Этим же циклом можно выводить не только значения элементов, но и их индексы:
foreach($my_array as $index=>$value)
{
echo $index, "=>", $value, "<BR>";
}
На экране появится:
Имя=>Иван Фамилия=>Иванов Зарплата=>25560
Для добавления элементов в массив можно использовать следующие способы:
- для массива-списка:
$my_array[] = “Профессор”;
- для ассоциативного массива:
$my_array[‘Должность’] = “Профессор”;
Для удаления элемента из массива используется функция unset(элемент):
unset($my_array[2]);
или
unset($my_array[‘Зарплата’]);
Удален элемент с индексом 2 (индексом ‘Зарплата’). При этом оставшиеся элементы сохраняют свои прежние индексы – переиндексации элементов массива не происходит. Этой же функцией можно удалить и весь массив:
unset($my_array);
Для определения количества элементов в массиве используются функции: