Я новичок в OOP php, теперь я пытаюсь понять общий шаблон, но я ударил где-то в разделе обмена базой данных для всех классов. Я имею в виду этот ответ, который делает соединение db одноэлементным классом и вызывает его в каждом конструкторе.
Это класс базы данных singleton, должен выполнить часть подключения, и у меня установлен автозагрузка
class DatabaseConnection{ private static $instance; private $dbc; private function __construct(){ $this->dbc = mysqli_connect(...); } public static function connectDb(){ if(empty(self::$instance)){ self::$instance = new DatabaseConnection; } return self::$instance; } }
Это мой класс, я пытался подключить db в конструкторе
class SlideShow { private $dbc; private $result; function __construct() { $this->dbc=DatabaseConnection::connectDb(); $this->result=$this->getSlideShow(); } private function getSlideShow(){ $q = "SELECT * FROM table"; $this->result = mysqli_query($this->dbc, $q); //the error stated $dbc , object given } }
У меня проблема в классе SlideShow, который говорит, что $ dbc является объектом ' , мой вопрос: я делаю это правильно? Если да, то как я исправить вещи, мне было трудно понять ответ отправлен