Почему PHPStorm не видит переменную из конструктора класса?

Здравствуйте! Есть такой класс:
class Site
{
//конструктор класса
    public function __construct($login, $id = 0, $mainname = 0, $charset = 0, $email = 0, $index = 0)
    {
        $this->id = $id;
        $this->userid = $login;
        $this->mainname = $mainname;
        $this->charset = $charset;
        $this->email = $email;
        $this->index = $index;
        //connect to database
        $dbhost = "127.0.0.1";
        $dbuser = "***";
        $dbpass = "***";
        $dbname = "****";
        $connect = new PDO("mysql:host=$dbhost;dbname=$dbname", $dbuser, $dbpass , [PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION]);
    }
//метод класса
  public function getsiteinfo($login, $id)
    {

        $getquery = $connect->prepare("SELECT * FROM `***` WHERE `***` = :login AND `unid` = :unid");
        $getquery->execute(array(":login" => $login,  ":unid" => $id));
        $info = $getquery->fetch();
        return $info;
    }
}

PHPStorm подчёркивает переменную $connect в методе getsiteinfo() красным, ошибка: Undefined variable 'connect'
  • Вопрос задан
  • 241 просмотр
Решения вопроса 1
Потому что переменные между методами не передаются.
Если хотите что-то переиспользовать, нужно сохранять это в параметры объекта:
$this->connection = ...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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