#43164 [Com]: Array property with recursion

From: Date: Wed, 31 Oct 2007 16:34:19 +0000
Subject: #43164 [Com]: Array property with recursion
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-119156@lists.php.net to get a copy of this message
ID: 43164 Comment by: crescentfreshpot at yahoo dot com Reported By: felipensp at gmail dot com Status: Open Bug Type: Scripting Engine problem Operating System: Linux PHP Version: 5.3CVS-2007-10-31 (snap) New Comment: Works fine for me. PHP 5.2.1 (cli) (built: Feb 7 2007 23:11:26) Copyright (c) 1997-2007 The PHP Group Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies Previous Comments: ------------------------------------------------------------------------ [2007-10-31 16:25:33] felipensp at gmail dot com Description: ------------ Array property don't make recursion when use reference to itself. Reproduce code: --------------- <?php class foo { } $foo = new foo; $foo->a = array(); $foo->a[] =& $foo->a; var_dump($foo); $foo->a = array(); $foo->a[] = $foo->a; var_dump($foo); $a = array(); $a[] = $a; var_dump($a); $a = array(); $a[] =& $a; var_dump($a); Expected result: ---------------- object(foo)#1 (1) { ["a"]=> array(1) { [0]=> *RECURSION* } } object(foo)#1 (1) { ["a"]=> &array(1) { [0]=> &array(1) { [0]=> *RECURSION* } } } array(1) { [0]=> array(1) { [0]=> *RECURSION* } } array(1) { [0]=> &array(1) { [0]=> &array(1) { [0]=> *RECURSION* } } } Actual result: -------------- object(foo)#1 (1) { ["a"]=> array(1) { [0]=> array(0) { } } } object(foo)#1 (1) { ["a"]=> &array(1) { [0]=> &array(1) { [0]=> *RECURSION* } } } array(1) { [0]=> array(1) { [0]=> *RECURSION* } } array(1) { [0]=> &array(1) { [0]=> &array(1) { [0]=> *RECURSION* } } } ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=43164&edit=1

« previous php.bugs (#119156) next »