ID: 31326 Updated by: [EMAIL PROTECTED] Reported By: sir dot gallahad at gmail dot com -Status: Open +Status: Feedback Bug Type: Zend Engine 2 problem Operating System: Linux PHP Version: 5.0.2 New Comment:
Please try using this CVS snapshot: http://snaps.php.net/php5-latest.tar.gz For Windows: http://snaps.php.net/win32/php5-win32-latest.zip Previous Comments: ------------------------------------------------------------------------ [2004-12-28 20:27:18] sir dot gallahad at gmail dot com Description: ------------ First of all. It's not a bug. It's a sugestion to give more stability to the engine. When the Zend Engine reaches the end of a script page it cleans up the classes that have been created. Nowadays it cleans up in the order the classes have been created. I suggest that it would be a safer routine to destroy a class following a heap of objects (first in last out). It would help some nesting routines, not mentioning the memory allocation. Reproduce code: --------------- <? $ident = 0; class Tag { public $aVar; function __construct( $pMe ) { global $ident; $this->aVar = $pMe; echo str_repeat(" ",$ident)."[".$this->aVar."]<br>"; $ident++; } function __destruct() { global $ident; $ident--; echo str_repeat(" ",$ident)."[/".$this->aVar."]<br>"; } } $v1 = new Tag("tag1"); $v2 = new Tag("tag2"); $v3 = new Tag("tag3"); echo '<br><br>'; ?> Expected result: ---------------- [tag1] [tag2] [tag3] [/tag3] [/tag2] [/tag1] Actual result: -------------- [tag1] [tag2] [tag3] [/tag1] [/tag2] [/tag3] ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=31326&edit=1