Как найти размер массива в PHP

PHP

Функция представлена в PHP начиная с его четвёртой версии и служит для подсчёта числа элементов в объекте или в массиве. В первом случае для работоспособности потребуется поддержка интерфейса Countable, введённого в пятом релизе языка программирования.

Синтаксис

<?
count($value, $mode);
?>

Модель написания функции проста, поскольку последняя обладает двумя параметрами, один из которых является необязательным. В $value нужно задать массив или объект. Это рекомендуется сделать указанием переменной для облегчения читаемости кода. Вторая опция – $mode, при значении 1 включающая рекурсивный режим работы.

Предупреждение

Во избежание бесконечного выполнения скрипта, вызванного активным вторым флагом и некорректной настройкой массива, PHP автоматически применяет варианты противодействия данному моменту. При этом функция вернёт завышенное значение, а в логах появится запись уровня E_WARNING.

Дополнительные возможности

Если на месте $value может оказаться иное содержимое, не являющееся ни объектом, ни массивом, стоит создать предварительную проверку на возможность подсчёта контента. Это обеспечивается функцией is_countable() и особенно важно при использовании count() для ресурсоёмких задач.

В тексте есть примеры работы с is_countable(), а на сайте также размещён подробный обзор структуры if-elseif-else, позволяющей выполнять различные действия в зависимости от значения какой-либо переменной.

Примеры использования

Простой подсчёт

<?
$array = array(
«first» =>»1″,
«second» =>»2″,
«third» =>»3″
);
$result = count($array);
echo $result;
?>

Результатом выполнения станет вывод числа «3» на экран.

Подсчёт с предварительной проверкой

<?
$array = «123»;
if(is_countable($array) == true) {
$result = count($array);
echo $result;
} else {
echo»Переменная не является массивом или объектом.»;
}
?>

Здесь применяется функция is_countable() во избежание ввода данных, не обрабатываемых count(), которые заданы в $array.

Подсчёт одинаковых элементов в ассоциативном массиве

<?
$request = 0;
$array = [0, «Привет», 2, «мир», «0», 0];
$count = array_count_values($array);
echo $count[$request];
?>

Скрипт вернёт значение «3» и предполагает использование array_count_values().

Оцените статью
Образовательный портал WELCOME4U.RU
Добавить комментарий

Adblock
detector