Язык программирования PHP | страница 60
>
>$a = array("и"=>"Информатика",
> "м"=>"Математика");
>$b = array("и"=>"История","м"=>"Биология",
> "ф"=>"Физика");
>$c = $a + $b;
>$d = $b +$a;
>print_r($c);
>/* получим: Array([и]=>Информатика
> [м]=>Математика [ф]=>Физика) */
>print_r($d);
>/* получим: Array([и]=>История
> [м]=>Биология [ф]=>Физика) */
>?>
Сравнивать массивы можно, проверяя их равенство или неравенство либо эквивалентность или неэквивалентность. Равенство массивов – это когда совпадают все пары ключ/значение элементов массивов. Эквивалентность – когда кроме равенства значений и ключей элементов требуется еще, чтобы элементы в обоих массивах были записаны в одном и том же порядке. Равенство значений в PHP обозначается символом «==», а эквивалентность – символом «===».
>
>$a = array("и"=>"Информатика",
> "м"=>"Математика");
>$b = array("м"=>"Математика",
> "и"=>"Информатика");
>if ($a == $b) echo "Массивы равны и";
> else echo "Массивы НЕ равны и ";
>if ($a === $b) echo " эквивалентны";
> else echo " НЕ эквивалентны";
>// получим echo "Массивы равны и
> НЕ эквивалентны"
>?>
Далее рассмотрим еще одну важную операцию с массивом – подсчет количества его элементов. Для ее реализации в PHP есть специальная функция.
Функция count
Не раз уже мы использовали функцию count(), чтобы вычислить количество элементов массива. На самом деле эта функция вычисляет число элементов в переменной вообще. Если применить ее к любой другой переменной, она возвратит 1. Исключение составляет переменная типа NULL – count(NULL) есть 0. Кроме того, применяя эту функцию к многомерному массиву, чтобы получить число его элементов, нужно использовать дополнительный параметр COUNT_RECURSIVE.
>
>$del_items = array("langs" => array(
> "10"=>"Python", "12"=>"Lisp"),
> "other"=>"Информатика");
>echo count($del_items) . "
";
> // выведет 2
>echo count($del_items,COUNT_RECURSIVE);
> // выведет 4
>?>
Мы не будем повторять все, что было сказано о массивах в предыдущих лекциях. В этой лекции мы рассмотрим некоторые встроенные функции для работы с массивами. И начнем мы с функций для поиска значений в массиве.
Функция in_array
>in_array("искомое значение","массив",
> ["ограничение на тип"]);
позволяет установить, содержится ли в заданном массиве искомое значение. Если третий аргумент задан как true, то в массиве нужно найти элемент, совпадающий с искомым не только по значению, но и по типу. Если искомое значение – строка, то сравнение чувствительно к регистру.