count() php8.2

Тема в разделе "PHP для новичков", создана пользователем KNS, 19 дек 2025.

Метки:
  1. KNS

    KNS Новичок

    С нами с:
    12 авг 2024
    Сообщения:
    34
    Симпатии:
    1
    Адрес:
    Вокруг да около
    При обновлении версии php до 8.2 выскочила ошибка:
    TypeError : count(): Аргумент #1 ($value) должен быть типа Countable|array, а передан null в функции loadConstant() (строка 17 файла modules/custom/vircabo/common-lib.php ).

    Код:
    function loadConstant($categ=false,$item=false) {
        if (defined("VIRC_SETTINGS")) return;
        if (!$categ) $param = array('categ'=>'');
                else $param = array('categ'=>''.VM.$categ);
        if ($item) $param['id'] = $item;
        $settArr = zQuery('_constant','select','',$param,true);
        foreach($settArr as $i => $sets) {
            if (!defined($sets[0])) { define($sets[0],$sets[1]); }
        }
        if ( $categ == 'LOGIN' ) {
            $agent = zQuery('agent,_constant','select',DEF_AGENT,array(),true);
            if (count($agent)) {
                define("AGENT_ADDR",$agent[0][2]);
                define("AGENT_PHONE",$agent[0][3]);
            }
        }
        if (!$item) { define("VIRC_SETTINGS",$categ ? true : $categ); }
    }
    
    Ни как не получается исправить этот кусок кода:

    Код:
            if (count($agent)) {
                define("AGENT_ADDR",$agent[0][2]);
                define("AGENT_PHONE",$agent[0][3]);
            }
    Есть у кого ни будь какие мысли:
     
  2. Drunkenmunky

    Drunkenmunky Старожил

    С нами с:
    12 авг 2020
    Сообщения:
    1.513
    Симпатии:
    284
  3. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.844
    Симпатии:
    1.338
    Адрес:
    Лень
    чел написал код, подключил стороннюю либу, но не понял почему при результате 0 приходит null
    --- Добавлено ---
    и юзать array() в 8.2
     
  4. Drunkenmunky

    Drunkenmunky Старожил

    С нами с:
    12 авг 2020
    Сообщения:
    1.513
    Симпатии:
    284
    Осуждающе цокает