note 73890 added to language.variables.scope
| From: | mod at osu1 dot php dot net | Date: | Wed, 14 Mar 2007 19:03:02 +0000 |
| Subject: | note 73890 added to language.variables.scope | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-124446@lists.php.net to get a copy of this message | ||
Can not access to global variables from destructor, if obj is not unseted at the end:
<?php
class A
{
function __destruct()
{
global $g_Obj;
echo "<br>#step 2: ";
var_dump($g_Obj);
}
function start()
{
global $g_Obj;
echo "<br>#step 1: ";
var_dump($g_Obj);
}
};
$g_Obj = new A(); // start here
$g_Obj->start();
$g_Obj = NULL; // !!! comment line and result will changed !!!
?>
Result, if line is not commented:
#step 1: object(A)#1 (0) { }
#step 2: object(A)#1 (0) { }
Result, if line is commented:
#step 1: object(A)#1 (0) { }
#step 2: NULL
----
Server IP: 69.147.83.197
Probable Submitter: 89.151.135.88
----
Manual Page -- http://www.php.net/manual/en/language.variables.scope.php
Edit -- https://master.php.net/note/edit/73890
Del: integrated -- https://master.php.net/note/delete/73890/integrated
Del: useless -- https://master.php.net/note/delete/73890/useless
Del: bad code -- https://master.php.net/note/delete/73890/bad+code
Del: spam -- https://master.php.net/note/delete/73890/spam
Del: non-english -- https://master.php.net/note/delete/73890/non-english
Del: in docs -- https://master.php.net/note/delete/73890/in+docs
Del: other reasons-- https://master.php.net/note/delete/73890
Reject -- https://master.php.net/note/reject/73890
Search -- https://master.php.net/manage/user-notes.php