Bug #12533 [Com]: Reference and global keyword don't work as documented
| From: | magister99 at hotmail dot com | Date: | Tue, 09 Nov 2010 22:13:35 +0000 |
| Subject: | Bug #12533 [Com]: Reference and global keyword don't work as documented | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-155900@lists.php.net to get a copy of this message | ||
Edit report at http://bugs.php.net/bug.php?id=12533&edit=1
ID: 12533
Comment by: magister99 at hotmail dot com
Reported by: pmateesc at dynasty dot com
Summary: Reference and global keyword don't work as
documented
Status: Bogus
Type: Bug
Package: Scripting Engine problem
Operating System: W2k, Linux
PHP Version: 4.0.6
Block user comment: N
New Comment:
Hi! What is posted in the manual does not work as expected:
class DTO
{
public $msgs = "ergegefr";
public $a = 1;
public $b = 2;
function Insert(){
global $msgsb, $a, $b;
$b = $a + $b;
print $msgs; //Prints nothing
print $b; //Prints 0
}
}
Previous Comments:
------------------------------------------------------------------------
[2001-12-14 14:37:42] yohgaki@php.net
This is explained in the Manual. Please ask support question to
php-general.
Note: Reference is not a pointer. This is confiuing, but it will not be
fixed.
------------------------------------------------------------------------
[2001-08-02 10:26:44] pmateesc at dynasty dot com
<?
$a = 1;
$b = 2;
function Sum() {
global $a, $b;
$b = &$a;
}
echo "a=$a b=$b";
?>
I expect echo to output "a=1 b=1" since within Sum I set the variable $b
(which refers to global $b) as a reference to $a.
However, this works using $GLOBALS instead of the keyword global.
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/bug.php?id=12533&edit=1