ID:               35063
 Comment by:       phpdev at citromail dot hu
 Reported By:      dave dot newman at codegate dot co dot uk
 Status:           Assigned
 Bug Type:         Arrays related
 Operating System: Windows XP
 PHP Version:      4CVS-2005-11-02 (CVS)
 Assigned To:      ilia
 New Comment:

I myself also noticed this bug when I installed the news 4.4.1 release
this morning. 4.4.0 worked fine, but 4.4.1 is broken. This bug should
be fixed ASAP as this affects (breaks) primary functions of PHP and
there's no workaround for it.


Previous Comments:
------------------------------------------------------------------------

[2005-11-02 10:20:40] dave dot newman at codegate dot co dot uk

Description:
------------
I call a function with a reference to an array and an object.
I then add the object to the end of the array.
When I then use end() and key() to get the key of the the object just
added to the array key() always returns 0 rather than the actual key
value. 

Reproduce code:
---------------
function addToArray(&$array, $obj)
{
  $array[] = $obj;
  print_r($array);
  end($array);
  print 'last key = '.key($array).'<hr/>';
}

print '<pre>';

$array = array();
for ($a=0; $a<5; $a++)
  addToArray($array, array($a=>$a));

print '</pre>';

Expected result:
----------------
I expect it to print to the screen an array dump followed by the last
key value in the array 5 times (seperated by <hr>).
I add an object to the array each time, so the last key value displayed
should go from 0 to 4.

Actual result:
--------------
the last key value is always 0 rather than the actual last key value.


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=35063&edit=1

Reply via email to