Jump to content

[SOLVED] Desparation: References do not work as expected


yassen

Recommended Posts

Hello guys, first post here.

I am really desparate about how references (do not) work in PHP.

Here's a code snippet:

[code]
var $data;
var $_children;
var $_uniqueNames;

function &add(&$child) {
$name = $child->data->name;
if (array_key_exists($name, $this->_uniqueNames)) {
return $this->_uniqueNames[$name];
}
$this->_children[] =& $child;
$this->_uniqueNames[$name] =& $child; // we register the name
$true = TRUE;
return $true;
}
[/code]

This is part of a simple Node class prepared to build trees. A Node remembers the names of its children and refuses to add a new child with a name already registered. Everything seems to work except the return value in case there is an attempt to add a child with an already registered name -- my client code always gets NULL whatever I do!
I would appreciate any idea of why is that and how can I fix it, thanks in advance!
Yassen

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.