ADODB. Присвоение объекта по ссылке.

Oleg Marchuk

Человек
ADODB. Присвоение объекта по ссылке.

Есть такой код в функцие-члене класса.
$this->db - объект ADODB.
PHP:
$sql = 'select * 
	from message_thread_subscribe
	where thread_id='.(int)$this->place_id.'
	and user_id='.(int)$this->conf->get('auth_user_id', 'session');
$rs [B]&[/B] = $this->db->Execute($sql);
Как известно, $this->db->Execute($sql) должен возвращать объект (есть даже специальный пустой класс для пустого recordSet'a).
Запрос $sql - возвращает пустой результат.
Без выделенного &, $rs, как и ожидалось, - класс пустого recordSet'a. С & - $rs === (int)0.
 

Макс

Старожил PHPClub
>> $rs & = $this->db->Execute($sql);
$rs = & $this->db->Execute($sql);
может так ? Или это была опечатка ?
 

young

Новичок
Ты понимаешь что когда ты пишешь

=& ты получаешь присвоение по ссылке

а когда

&= побитовое OR
что дает 0

-~{}~ 09.06.04 15:04:

кстати
$this->conf->get('auth_user_id', 'session');
я так вижу что идеи нашли себе продолжение и пошли в массы
 

Oleg Marchuk

Человек
Да, вы правы. Заработался. Почему-то проассоциировал &= с присвоением по ссылке, а не с битовой операцией. Только что сам дошел :)
young
Идея пока работает, но уже есть более продуктивные решения. Например

config::get();
 

lucas

Guest
Идеи ООП -- объектно-ориентированного программирования.
Одна из них -- работа со св-вами объекта методами get/set.
 

Oleg Marchuk

Человек
lucas
Не то. Идея была уменьшить количество символов для написания ображения к одному супер глобальному объекту. Если изначатьно он всегда передавался в констуктор любого объекта, то теперь он становится классом, не требующим инициализации :)
 
Сверху