ID: 12905 Updated by: jeroen Reported By: [EMAIL PROTECTED] Old Status: Open Status: Bogus Bug Type: Documentation problem Operating System: Slackware 7 PHP Version: 4.0.6 New Comment: Please read: http://www.php.net/manual/en/language.references.return.php [By the way, a user complains that is hard to read. If you or anyone else has a better text, simply mail it to [EMAIL PROTECTED], and we'll put it online.] Previous Comments: ------------------------------------------------------------------------ [2001-08-22 12:20:15] [EMAIL PROTECTED] renaming the function: function AddChild(... to function &AddChild(... makes return return by reference instead of by value, i didnt think to do this so it appears its my fault:) i've changed this bug to a documentation problem tho cos i cant find any reference to this in the docs. ------------------------------------------------------------------------ [2001-08-22 12:13:08] [EMAIL PROTECTED] <? Class ChildClass { var $value; function ChildClass($value){ $this->value = $value; } } Class ParentClass { var $children; function ParentClass(){ $this->children = array(); } function AddChild($value){ $child = &new ChildClass($value); array_push($this->children, &$child); return $child; } } $p1 = &new ParentClass(); $c1 = &$p1->AddChild('set in constructor'); $c1->value = 'set elsewhere'; echo "the reference to the object created in AddBand and stored in the parentclass' array is different to that returned by the AddBand function<br>"; echo $p1->children[0]->value."<br>"; echo $c1->value; ?> "return" is returning a copy of the object created in parentclass->AddChild instead of a reference. "return &$object" is flagged as invalid by the php interpreter. thanks a lot olli holliday ------------------------------------------------------------------------ Edit this bug report at http://bugs.php.net/?id=12905&edit=1 -- PHP Development Mailing List <http://www.php.net/> To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]