Akademic
Новичок
PHP4: Проблема при возвращении ссылки на объект
Доброе время суток!
Столкнулся с проблемой. Вместо ссылки на существующий объект возвращается копия объекта.
Код, приведёный ниже выдаёт "Тест1Тест2", а надо "Тест2Тест2".
Поможете?
Доброе время суток!
Столкнулся с проблемой. Вместо ссылки на существующий объект возвращается копия объекта.
Код, приведёный ниже выдаёт "Тест1Тест2", а надо "Тест2Тест2".
PHP:
<?php
class class4reg {
var $test_var = '123';
}
class registrator {
var $_objects = array();
function regObj( &$obj ) {
$this->_objects[get_class( $obj )] = &$obj;
}
function & newObj( $class_name ) {
$obj = new $class_name();
return $obj;
}
function & getObj( $class_name ) {
if( !isset( $this->_objects[$class_name] ) ) {
$obj = $this->newObj( $class_name );
$this->regObj( &$obj );
}
else
$obj = $this->_objects[$class_name];
return $obj;
}
}
$reg = new registrator();
$obj1 = $reg->getObj( 'class4reg' );
$obj1->test_var = 'Тест1';
$obj2 = $reg->getObj( 'class4reg' );
$obj2->test_var = 'Тест2';
echo $obj1->test_var;
echo $obj2->test_var;
?>