Урок 4. Массивы в PHP
Массивы – это индексированная совокупность элементов одного типа. Существуют одномерные массивы (вектор), двухмерные массивы (матрица), и многомерные массивы. Каждый элемент массива имеет свой индекс, т.е. все элементы в массиве пронумерованы по порядку, начиная от 0 (нуля) и до размера массива.
Существует два метода создания массива в PHP:
- Присвоение значений элементам массива
- Использование функции array()
Рассмотрим первый метод:
<?php
$mass[]='hello';
$mass[]='world';
$mass[]='!';
?>
Мы создали массив $mass, состоящий из трех эелементов типа String и присвоили этим элементам значения. Чтобы получить значение элемента в коде – мы можем обратиться к элементу массива по его индексу (т.е. порядковому номеру):
$mass[1] вернет строку ‘world’ (т.к. нумерация элементов начинается с нуля).
Существует так же понятие “Ассоциативный массив”, где индексы элементов могут принимать имена, а не просто порядковый номер.
Пример:
<?php
$mass['blue'] = 'This is a blue color';
$mass['red'] = 'This is a red color';
$mass['green'] = 'This is a green color';
?>
$mass['blue'] вернет строку ‘This is a blue color’… То есть, значением элемента массива $mass с индексом ‘blue’ будет строка ‘This is a blue color’.
Рассмотрим второй метод:
<?php
$mass=array('string1', 'string2', 'string3', 'string4');
?>
Мы создали массив $mass из 4-х элементов и присвоили им значения (заполнили массив)…
Первый метод удобен при использовании циклов для заполнения массива. Например, нам нужно создать массив из 100 элементов и заполнить его числами от 0 до 99…
<?php
for($i=0; $i<100; $i++)
{
$mass[]=$i;
} echo $mass[10];// выводит значение 10-го элемента массива
?>
Для создания ассоциативного массива при помощи функции array(), используется знак “=>” для присвоения значений элементам… Например:
<?php
$mass=array('element1' => 'string1', 'element2' => 'string2', 'element3' => 'string3');
echo $mass['element2']; // Выводит элемент массива с индексом 'element2'
?>
В PHP существует множество библиотечных функций для работы с массивами. Ниже мы рассмотрим некоторые, наиболее полезные из них… но прежде, неоьходимо познакомится с понятием “функция” в программировании.
Функция – это фрагмент программного кода, обладающий уникальным именем и предназначенный для решения определенной задачи. Функция вызывается по имени в разных точках программы, что позволяет многократно выполнять фрагмент с указанным именем. Преимущество такого решения заключается в том, что блок кода пишется всего один раз, а затем легко модифицируется по мере необходимости.
Обобщенный синтаксис функций PHP выглядит так:
function имя_функции ([$параметр1. $параметр2, .... $параметрn]) {
тело функции
}
Функция может принимать параметры (аргументы), необходимые для обработки, и возвращать значение определенного типа как результат своей работы.
Итак, основные библиотечные функции PHP для работы с массивами… (понятие “библиотечные” – означает, что они уже созданы и описаны разработчиками языка и включены в специальные стандартные библиотеки для использования в написании PHP кода)…
Функция count()
Возвращает количество элементов в массиве. Например:
<?php
$mass=array(1,2,6,8,4,9);
echo count($mass);
?>
Функция explode()
Функция, позволяющая создать массив строк из исходной строки, используя определенный символ (или последовательность символов) в качестве разделителя элементов. Собственно, эта функция относится к Строковым функциям (о которых мы будем говорить позже)…
Работает она так:
$mass = explode ( ‘$delim’, ‘$str’ ) – в качестве аргументов функция принимает две строки: первая – используется в качестве разделителя, вторая – строка для обработки…
Пример:
<?php
$str='Hello, I learn PHP language!';
$mass=explode(' ', $str);
?>
В данном примере в качестве разделителя послан пробел (‘ ‘). Таким образом будет создан массив $mass следующего содержания:
$mass[0] = ‘Hello,’;
$mass[1] = ‘I’;
$mass[2] = ‘learn’;
$mass[3] = ‘PHP’;
$mass[4] = ‘language!’;
Функция implode()
Обратная противоположность функции explode(). Создает строку из элементов массива, разделяя их заданным разделителем.
Пример:
<?php
$mass = array('green', 'red', 'blue');
$stroka = implode(",", $array);
echo $stroka;
?>
Функция array_merge()
Объединяет несколько массивов в один массив, добавляя элементы каждого последующего массива в конец предыдущего и возвращает полученный в результате объединения массив.
<?php
$array1 = array(1, 2, 3, 4);
$array2 = array(5, 6, 7);
$array3 = array(8,9);
$finish_array=array_merge($array1, $array2, $array3 );
echo count($finish_array); // выведет 9
?>
Функция array_unique()
Удаляет дубликаты из массива. Принимает массив 1 и возвращает массив 2, в котором удалены все дубликаты.
Пример:
<?php
$massiv_1 = array(4, 4, 3, 4, 3, 2);
$massiv_2 = array_unique($massiv_1);
echo 'Размер массива 1 = '.count($massiv_1).'<br>'; // выведет 6
echo 'Размер массива 2 = '.count($massiv_2).'<br>'; // выведет 3
?>




Добавить комментарий