ID: 20175
Updated by: [EMAIL PROTECTED]
-Summary: Static vars can't store ref to new instance
-Reported By: [EMAIL PROTECTED]
+Reported By: [EMAIL PROTECTED]
-Status: Open
+Status: Won\'t fix
Bug Type: Scripting Engine problem
-Operating System: All
+Operating System: Linux
-PHP Version: 4.2.1
+PHP Version: 4.3.0-dev
New Comment:
This is fixed in CVS for ZE2. I don't think this would be fixed for
ZE1, so I put it as wontfix for now.
Previous Comments:
------------------------------------------------------------------------
[2002-10-30 14:07:08] [EMAIL PROTECTED]
Heh,
I'm certain it does, but I'll ask andi on the list to check
for us.
It would be reeeeeeally nice yo have for us in 4.2 though
:)
Thanks for the quick response.
_a
------------------------------------------------------------------------
[2002-10-30 13:37:46] [EMAIL PROTECTED]
Can you see if Zend Engine 2 solves this?
Derick
------------------------------------------------------------------------
[2002-10-30 13:34:48] [EMAIL PROTECTED]
ola,
we've recently put in a set of methods in the binarycloud
core classes so they can enforce their singleton status.
An example:
// {{{ method GetInstance()
/**
* This method enforces this class's singleton
* status. It check s astatic var for an instance,
* if that instance exists a reference to it
* is returned. If it does not exist it is created
* and a reference is returned.
* @author hans lellelid, [EMAIL PROTECTED]
* @access public
*/
function &GetInstance() {
static $instance;
if(!isset($instance)) {
$instance = new Request();
}
return $instance;
}
// }}}
note the line:
$instance = new Request();
that means the instance is always overwritten.
we have to do that because:
$instance =& new Request();
results in a null $instance.
We believe this is a bug, but it's on the edge of possible
expected behavior.
thanks,
_alex
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=20175&edit=1