ID: 35106
User updated by: olympnn at nm dot ru
Reported By: olympnn at nm dot ru
-Status: Feedback
+Status: Open
Bug Type: Arrays related
Operating System: Windows XP Sp2
PHP Version: 5.0.5
New Comment:
Downloaded Windows version, nothing new.
Script
<?
print(PHP_VERSION."\n");
$a=array("1","2");
$b=&$a;//*
foreach($a as $i){
print($i);
foreach($a as $p);//*
}
?>
returns
5.0.6-dev
1
expected
5.0.6-dev
12
When commenting any of two lines marked *, output becomes
5.0.6-dev
12
Previous Comments:
------------------------------------------------------------------------
[2005-11-04 17:04:00] [EMAIL PROTECTED]
Please try using this CVS snapshot:
http://snaps.php.net/php5-STABLE-latest.tar.gz
For Windows:
http://snaps.php.net/win32/php5.0-win32-latest.zip
------------------------------------------------------------------------
[2005-11-04 16:57:11] olympnn at nm dot ru
Description:
------------
When I execute the code, it seems that the outer foreach is executed
only once. When I comment any of lines marked *, the (outer) foreach
executes twice.
This bug seems to be very like to bug # 21702, but here the situation
is much more strange: I do not use $b in foreaches at all! So it's very
strange that the foreach behavior differs when the array was referenced
sometime or not.
Thanks.
Reproduce code:
---------------
<?
$a=array("1","2");
$b=&$a;//*
foreach($a as $i){
print($i);
foreach($a as $p);//*
}
?>
Expected result:
----------------
12
Actual result:
--------------
1
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=35106&edit=1