Почему выдает такую ошибку php?

есть простой метод

public static function exists($name){

    if(isset($_SESSION[$name])){
      return true;
    }

  }

Почему он выдает такую ошибку

Illegal offset type in isset or empty in ... Session.php on line 12

Строка 12 - это if(isset($_SESSION[$name])){

Он ругается именно на Проверку $_Session[$name], причем если проверять лишь name то все окей


Ответы (1 шт):

Автор решения: Mcile

правильнее будет если php версии 7+

public static function exists(string $name=''): bool
{
  if(!$name){
    return false;
  }
  return isset($_SESSION[$name]);
}

защитное программирование заключается в том чтобы проверять всегда входящие данные Рекомендую прочесть книгу Совершенный код, чтобы не попадаться на такое

→ Ссылка