ID: 40385 Updated by: [EMAIL PROTECTED] Reported By: viqq at gazeta dot pl -Status: Open +Status: Bogus Bug Type: Variables related Operating System: Linux ubuntu 2.6.15-27-386 PHP Version: 5.2.0 New Comment:
>$t[] = &$node "$t[0] and $node both point to the same value". >$node = '2'; "$node is changed to '2', $t[0] is changed either". >$t[] = &$node; "$t[1] points to the value already referenced by $node and $t[0]". Previous Comments: ------------------------------------------------------------------------ [2007-02-07 12:39:15] viqq at gazeta dot pl Description: ------------ When a reference to a variable (containing e.g. a literal or an object) is inserted into an array, all existing references in this array becomes references to this variable. Reproduce code: --------------- $t = NULL; $node = '1'; // or $node = new Object(); $t[] = &$node; $node = '2'; // or $node = new Object(); $t[] = &$node; var_dump($t); Expected result: ---------------- array(2) { [0]=> &string(1) "1" [1]=> &string(1) "2" } Actual result: -------------- array(2) { [0]=> &string(1) "2" [1]=> &string(1) "2" } ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=40385&edit=1