Я думаю, что заголовок правильный, но, пожалуйста, поправьте меня, если он ошибочен.
Проблема: у меня есть класс, который хочет использовать класс DB, теперь вместо того, чтобы "global $ db;" в каждом методе я хочу использовать объект БД, в котором я хочу разместить ссылку на объект в свойствах моего класса.
Все еще следите? ОК, здесь идет:
class user
{
private $id = 0;
private $name = NULL;
private $password = NULL;
private $db;
function __construct()
{
$this->load_db();
}
private function load_db()
{
global $db;
$this->$db =& $db;
}
Я получаю сообщение об ошибке «Объект класса db не может быть преобразован в строку», что раздражает, так как я не могу понять, как установить тип var в PHP ...
Теперь мой вопрос в два раза:
1) Как мне это исправить.
или же
2) Есть ли лучший способ сделать это, так как это выглядит действительно "скупыми руками".
Заранее спасибо,
Dorjan
edit: Просто чтобы убедиться, что я ясен, я не хочу делать несколько экземпляров одного и того же объекта БД. По крайней мере, я считаю, что это хорошая практика ^, ^