бд. Этот класс наследуется множествами другими классами, в которых есть методы для обращения к бд. Это конечно не хорошо, ведь при создание объекта любого класса, то создается подключение к бд. Как бы с этим работать можно. Но вот произошла такая ошибка, типа создалось больше чем одно подключение и произошла ошибка. Дело в том, что я в одном контролере сделал два экземпляра классов, которые наследуют Db. Теперь пытаюсь решить эту проблему. Читал про singleton, но говорят, что это плохая практика. И я думаю в файле index.php(точка входа) объявить класс Db и сделать его доступным на всех уровнях проекта. Подскажите, как это сделать?
не использовать наследование. а использовать классы типа: class TastyCakesRepository { private $db; public function __construct(DB $db) {} // Returns all the cakes public function all() {} public function chocoladeCakes() { $db->select(*)->from('cakes')->where('type' => 'chocolade'); /... } } понял?
Обсуждают сегодня