Как определить значение ложь или null у функции count на PHP?

Пример:
$result = count(null);
// $result == 0;

$result = count(false);
// $result == 1;

Короче должно быть так, если $result null или false то получать 0 !
Мой код:
$oldCookie = $_COOKIE[$cookie];
$array = explode(",", $_COOKIE[$cookie]);
$booleanResult = in_array($id,$array);
$countArray = count($array); //result int(1)


В моём случае получается что если ничего не добавлено в избранное 1, и если добавлен один товар то тоже 1)
  • Вопрос задан
  • 263 просмотра
Решения вопроса 2
gobananas
@gobananas
finishhim.ru
php.net/manual/ru/function.count.php
Возвращает количество элементов в array_or_countable. Если параметр не является массивом или объектом, реализующим интерфейс Countable, будет возвращена 1. За одним исключением: если array_or_countable - NULL, то будет возвращён 0.


Нет варианта когда она возвращает false. Если же вы опасаетесь что false в неё попадёт, то кто вам мешает сделать
if($var !== false){
     $res = count($var);
}

В вашем случае:
if(isset($array)){
    $countArray = count($array);
}
Ответ написан
Sanasol
@Sanasol Куратор тега PHP
нельзя просто так взять и загуглить ошибку
explode возвращает либо false, либо массив.
null-то причем здесь вообще.

После explode делайте is_array, а не сразу count.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы