ID: 15871
Updated by: [EMAIL PROTECTED]
Reported By: [EMAIL PROTECTED]
Status: Bogus
Bug Type: Variables related
Operating System: linux
PHP Version: 4.1.2
New Comment:
Just to give you a better answer here. Consider $$a->b
Does this mean the the class name $$a with the property b or the
variable property $a->b? See the vagueness here? It could be
interpreted as either ${$a->b} or {$$a}->b. That's why the {}'s are
needed to resolve this ambiguity.
Previous Comments:
------------------------------------------------------------------------
[2002-03-05 07:22:00] [EMAIL PROTECTED]
Actually this isn't a bug, but just 'how things work'.
regards,
Derick
------------------------------------------------------------------------
[2002-03-05 07:13:34] [EMAIL PROTECTED]
When using a variable variable in a class, $$this->varname does not
work, ${$this->varname} must be used.
Here is a simple script to show this in action. Put the {} in and it
will work:
<?
$id = "yes";
class testClass {
var $varname;
function testClass($varname) {
$this->varname = $varname;
}
function foo() {
global $$this->varname;
echo "$".$this->varname." is ".$$this->varname;
}
}
$test = new testClass("id");
$test->foo();
?>
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=15871&edit=1