Массив PHP - это способ хранения множества значений под одним именем. Массив состоит из элементов. Элементы массива в PHP могут быть переменными различных типов. Забегая немного вперед, скажем, что структуры (structure) и классы (class) также могут быть элементами массивов.
Массивы используются при решении многих задач. Например, для хранения значений элементов матрицы, объемов производства за все месяцы года и т.п. Массив можно представить в таком виде:
[ ] [ ] [ ] [ ] [ ] ... [ ]
Представим, что здесь каждая пара квадратных скобок это один элемент массива, то есть массив это группа расположенных рядом элементов.
В PHP есть зарезервированное слово array для объявления массивов:
$array_name = array();
Здест array_name - имя массива, array - конструкция для объявления массивов.
Каждый элемент массива имеет свой порядковый номер, который называют индексом элемента массива. Очевидно, что индекс есть целое число. Нумерация элементов массива в PHP начинается с нуля. 0 - индекс первого элемента массива. 1 - индекс второго элемента массива и т.д. Функция count($array_name) возвращает количество элементов массива. Следовательно, индекс последнего элемента массива будет равен count($array_name)-1, общее количество элементов массива минус 1.
Пример:
Файл array1.php
$x = array();
for($i=0;$i<10;$i++)
$x[$i]=$i*$i;
for($i=0;$iecho "$i - $x[$i]
";
?>
В этом примере организованы два цикла, используя оператор циклов for. В каждом из этих циклов переменная $i принимает значения от 0 до 9. Массив $x состоит из 10 элементов. Каждый элемент массива есть переменная. Первый элемент - $x[0], второй элемент - $x[1], ..., десятый элемент - $x[9].
Другой пример:
Файл array2.php
$x = array();
for($i=0;$i<10;$i++)
$x[$i]=rand(1,100);
for($i=0;$iecho "$i - $x[$i]
";
?>
Функция rand(1,100) будет генерировать случайные числа между 1 и 100.
Пример:
Одномерный массив. Примеры
Пример 1: x[i] = i
$n = 10;
for($i=0;$i<$n;$i++)
$x[$i]=$i;
print_array($x);
?>
Пример 2: x[i] = i*2+1
for($i=0;$i<$n;$i++)
$x[$i]=$i*2+1;
print_array($x);
?>
Пример 3: x[i] = rand(1,10)
for($i=0;$i<$n;$i++)
$x[$i]=rand(1,10);
print_array($x);
?>
Пример 4: x[i] = rand(20,40), y[i] = x[i]-2
for($i=0;$i<$n;$i++) {
$x[$i]=rand(20,40);
$y[$i]=$x[$i]-2;
}
print_array($x);
echo "
";
print_array($y);
?>
function print_array($arr)
{
$n = count($arr);
echo "
Индекс | ";$i | ";
---|---|
Массив | ";$arr[$i] | ";
}
?>
Пример:
$n = 6;
$s = 0;
echo "Сумма = $s";
echo "
Индекс | Массив | Сумма |
---|---|---|
$i | $x[$i] | $s |
echo "Сумма = $s";
?>
Рекомендуем протестировать приведенные примеры, изменяя различные их части.
Контрольные вопросы и задания
- В приведенный пример добавьте нахождение элемента с минимальным значением.
- В приведенный пример добавьте нахождение элемента с максимальным значением.
- В приведенный пример добавьте нахождение среднего арифметического значения элементов массива.