ID: 42527 Updated by: [EMAIL PROTECTED] Reported By: ahmadj at mediatrac dot net Status: Open Bug Type: SPL related Operating System: CentOS 5 PHP Version: 5.2.4 New Comment:
Did you try the RCs released for PHP 5.2.4? Previous Comments: ------------------------------------------------------------------------ [2007-09-03 09:35:27] ahmadj at mediatrac dot net Description: ------------ At PHP 5.23 ArrayObject::offsetUnset() works as I expected, but at PHP 5.24 it doesn't work as I expected. The array offset doesn't destroy/unset properly and it still reside in the array. Reproduce code: --------------- $ArrayField = array("clip.clip_id", "clip.clip_title", "clip.clip_published_date", "media.media_name", "conditional_category.conditional_id", "conditional_category.conditional_name", "client_category_set.client_cids", "client_category_set.category_name"); $ArrayGroups = array("clip.clip_published_date", "client_category_set.category_name", "clip.clip_title", "clip.clip_id"); $collection = new ArrayObject($ArrayField); for ($iter = $collection->getIterator(); $iter->valid(); $iter->next()) { if (!in_array($iter->current(), $ArrayGroups)) { $collection->offsetUnset($iter->key()); } } Expected result: ---------------- At PHP 5.22 & 5.23, the $arrayField at offset(3,4,5,6) get unset properly, but when I try this code at PHP 5.24 the $arrayField at those offsets didn't get unset as PHP 5.22/5.23 did. ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=42527&edit=1