Приветствую всех. В одной из прошлых статей я рассказывал о вычислении длины строки в байтах или словах. Размер массива же узнается по-другому. Как узнать в php размер массива?
Функция count и ее параметры
Для этого существует функция count
и у нее есть 2 параметра. Один обязательный, а второй — нет. Первый, это, конечно же, сам массив, элементы которого нужно посчитать. Второй — это тип счета.
Тип счета может быть обычным, тогда его не нужно указывать, ведь он стоит по умолчанию. COUNT_RECURSIVE
— это второй тип. Если он указан, то будет правильно посчитано количество элементов в многомерном массиве. То есть, используйте этот параметр только тогда, когда нужно посчитать элементы в многомерном массиве.
Особенность работы функции count
Хочу отметить одну интересную особенность. Функция вернет 0, даже если переменной-массива, который проверяется, не существует. Также 0 будет возвращен в случае пустого массива, который существует. Чтобы дополнительно тестировать, существует ли переменная, можно использовать функцию isset()
.
Примеры работы и использования count
Допустим, у нас есть массив с животными, нужно посчитать кол-во элементов в нем:
$animals[0] = «собака»;
$animals[1] = «кошка»;
$animals[2] = «мышь»;
count($animals);
Результатом выполнения функции count в данном случае будет 3.
Использование с учетом рекурсивного счета
Пускай у нас есть многомерный массив со цветами, содержащий в себе два массива.
$flovers[0] = array(‘роза’, ‘тюльпан’, ‘пион’);
$flovers[1] = array(‘абелия’, ‘алоэ’, ‘агава’);
echo count($flovers, COUNT_RECURSIVE);
Таким образом благодаря заданному типу счета на экран выведется 8. Так как массивов 2 и в каждом из них по 3 значения. Если бы вы не указали параметр COUNT_RECURSIVE
, то функция вывела бы на экран 2, что вполне логично.
Что ж, это все, что я хотел сказал о функции count
и размерах массивов в php. До встречи на других страницах моего блога.