Bug #16609 Updated: Function called from class treats GLOBAL vars in different way...

From: Date: Mon, 15 Apr 2002 10:26:51 +0000
Subject: Bug #16609 Updated: Function called from class treats GLOBAL vars in different way...
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-5012@lists.php.net to get a copy of this message
ID: 16609 Updated by: daniel@webdevelopers.cz Reported By: daniel@webdevelopers.cz -Status: Open +Status: Duplicate Bug Type: Class/Object related Operating System: Windows 2000, Windows XP PHP Version: 4.1.2 New Comment: Duplicate submission. Sorry. Previous Comments: ------------------------------------------------------------------------ [2002-04-15 05:37:59] daniel@webdevelopers.cz There is the line marked with '//*' in the following script. One line up you will find other line that should make the exactly same action (I think). Try to comment this line and uncomment line with '//*'. The output will differ. Why? --- SCRIPT: START --- <PRE> <?php class test { function test() { extfunc($this); } } #__________________________________________________________________________________________________ function extfunc(&$ref) { global $obj; if (is_object($ref)) { $GLOBALS["obj"]=&$ref; # This is the same as '$obj=&$ref;'. Isn't it? #* $obj=&$ref; } } #================================================================================================== $test=new test(); var_dump($obj); ?> </PRE> --- SCRIPT: END --- ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=16609&edit=1

« previous php.bugs (#5012) next »