новое поведение ссылок пхп5?

Screjet

Новичок
новое поведение ссылок пхп5?

есть код:
PHP:
class a {

    function __construct( $sender ){
        $this->sender = $sender;
    }
    function set_var(){
        $this->sender->the_var = array(1,2,3);
    }
}
class b {

    function __construct(){
        $this->a = new a($this);
        $this->a->set_var();
    }
    function print_r(){
        print_r($this);
    }
}
$b = new b();
$b->print_r();
Результаты:
Код:
# php test_ref.php;php -v
b Object
(
    [a] => a Object
        (
            [sender] => b Object
 *RECURSION*
        )

    [the_var] => Array
        (
            [0] => 1
            [1] => 2
            [2] => 3
        )

)
PHP 5.0.3 (cli) (built: Mar 17 2005 16:02:35)
Copyright (c) 1997-2004 The PHP Group
Zend Engine v2.0.3, Copyright (c) 1998-2004 Zend Technologies
    with eAccelerator v0.9.2, Copyright (c) 2004-2004 eAccelerator, by eAccelerator
Вроде нормально (точнее уже привычно). Результат такой, который ожидается.
Код:
# php test_ref.php ;php -v
b Object
(
    [a] => a Object
        (
            [sender] => b Object
                (
                    [the_var] => Array
                        (
                            [0] => 1
                            [1] => 2
                            [2] => 3
                        )

                )

        )

)
PHP 5.0.4 (cli) (built: Apr 25 2005 02:37:07)
Copyright (c) 1997-2004 The PHP Group
Zend Engine v2.0.4-dev, Copyright (c) 1998-2004 Zend Technologies
    with eAccelerator v0.9.2, Copyright (c) 2004-2004 eAccelerator, by eAccelerator
Вроде ненормально. Резутьтат точно не ожидаемый. Как будто аргументом получил копию объекта. Или снова сменили поведение? И по-старому нужно передавать объект по ссылке? (ужаснулся при мысли скока исправлять кода..)
 
Сверху