Вы можете передать свой экземпляр объекта базы данных конструктору для ваших классов:
class Core
protected $db;
public function __construct(Your_Db_Class $database) {
$this->db = $database;
}
}
И затем, используя ваши методы, работайте с $this->db
, чтобы получить доступ к вашей базе данных.
Конечно, при создании экземпляров ваших классов вам нужно будет указать объект базы данных:
// somewhere, instanciate your DB class
$db = new Your_Db_Class();
// And, then, when instanciating your objects :
$obj = new MyClass1($db);
Другой способ - использовать шаблон проектирования Singleton , поэтому может быть только один экземпляр класса вашей базы данных.
Возможно, немного проще в настройке; но менее легко для юнит-теста, после.