ID: 35485 User updated by: vma1 at abv dot bg Reported By: vma1 at abv dot bg -Status: Bogus +Status: Open Bug Type: Arrays related Operating System: Slackware 10.1, kernel 2.4.31 PHP Version: 5CVS-2005-11-30 (snap) New Comment:
So what? each() is not touching the $items array, it is touching the $items [0], and $items [1] elements which are arrays as well. Previous Comments: ------------------------------------------------------------------------ [2005-11-30 13:30:05] [EMAIL PROTECTED] http://php.net/each each -- Return the current key and value pair from an array and *advance the array cursor* ------------------------------------------------------------------------ [2005-11-30 13:23:51] vma1 at abv dot bg In my previous comment I meant that no array elements are being added/removed. Besides try removing the each() operator and behaviour becomes correct. Something that should not happen. ------------------------------------------------------------------------ [2005-11-30 13:19:05] vma1 at abv dot bg The array is not being modified. ------------------------------------------------------------------------ [2005-11-30 12:54:27] [EMAIL PROTECTED] Do not modify array in the foreach() loop. ------------------------------------------------------------------------ [2005-11-30 12:41:39] vma1 at abv dot bg Description: ------------ When using foreach($arr as $index => &$item), the $item reference does not always allow a modification of the referenced element. Reproduce code: --------------- <? $items = array (array (1), array (1)); foreach ($items as $index => &$one_item) { printf ("C1 IDENTICAL: %u\n", $items [$index] === $one_item); each ($items [$index]); printf ("C2 IDENTICAL: %u\n", $items [$index] === $one_item); $one_item = 678; printf ("C3 IDENTICAL: %u\n", $items [$index] === $one_item); } ?> Expected result: ---------------- C1 IDENTICAL: 1 C2 IDENTICAL: 1 C3 IDENTICAL: 1 C1 IDENTICAL: 1 C2 IDENTICAL: 1 C3 IDENTICAL: 1 Actual result: -------------- C1 IDENTICAL: 1 C2 IDENTICAL: 1 C3 IDENTICAL: 1 C1 IDENTICAL: 1 C2 IDENTICAL: 1 C3 IDENTICAL: 0 ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=35485&edit=1