Создание массивов в php
Время перейти к изучению следующей структуры данных в РНР — к массивам. Массивы представляют собой набор данных, объединенных под одним именем, и они занимают значительное место в программировании. Каждый массив состоит из отдельных элементов, и каждый элемент массива ассоциирован с определенным индексом.
Массивы могут быть созданы при помощи оператора присваивания точно так же, как и обычные переменные. Имена массивов подчиняются тем же правилам, что и имена переменных, в частности, они начинаются со знака $. Отличительным признаком массива являются квадратные скобки после его имени, например:
$fruits[1] = "яблоко";
Данный оператор создает массив $fruits и присваивает его элементу с индексом 1 значение "яблоко". С этого момента к элементу можно обращаться точно так же, как и к обычной переменной, не забывая указывать значение индекса в квадратных скобках, например:
echo $fruits[1];
Этот оператор просто выведет строку " яблоко". К массиву легко добавить и другие элементы, например:
$fruits[2] = "груша"; $fruits[3] = "абрикос";
Наряду с числами, в качестве индексов массивов могут быть использованы и строки, например:
$apple_count["Москва"] = 10000; $apple_count["Рязань"] = 5000; $apple_count["Казань"] = 3000;
Следует обратить внимание на то, что в одном и том же массиве могут использоваться и числовые, и строковые индекс одновременно.
Существует сокращенная форма создания массива — после имени массива ставится пара квадратных скобок [], например:
$fruits[] = "яблоко"; $fruits[] = "груша"; $fruits[] = "абрикос";
РНР по умолчанию нумерует элементы массива, начиная с 0, так что в этом случае $fruits[1] будет содержать строку "груша", а не "яблоко", как в первом примере.
Для обработки всех элементов массива удобно использовать циклы, например, цикл for. Нумерация элементов массива начинается с 0, а функция count возвращает количество элементов массива. Ниже приведен пример, который последовательно выводит все элементы массива, каждый в своей строке.
for ($index = 0; $index < count($fruits); $index++) { echo $fruits[$index], "\n"; }
Существует еще более краткая форма для создания массива при помощи функции array:
$fruits = array("яблоко", "груша", "абрикос");
Этот оператор создает массив, индекс которого начинается с 0. Если же требуется начать нумерацию элементов массива с другого числа, можно воспользоваться конструкцией =>:
$fruits = array(1 => "яблоко", "груша", "абрикос");
Этот массив, в отличие от предыдущего, в элементе $fruits[1] содержит строку "яблоко", а не "груша". Точно так же может быть создан массив со строковыми индексами:
$apple_count = array("Москва" => 10000, "Рязань" => 5000, "Казань" => 3000);
Оператор => связывает индекс и соответствующее ему значение элемента массива.
Автор: Стивен Хольцнер. Переводчик: С. Банников