Re: Classes in PHP5 || Puzzling Problem || Trying to Set $this->$name = $value

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hey all.

Problem:

Class test {

    var $foo = 0;

    function __construct() {
        $this->myfunc("foo", 1);
    }

    function myfunc($name, $val) {
        $this->$name = $val;
    }
}

Now, PHP correctly evaluates $this->$name as 0; i.e. the default property 
value of $this->foo.

However, what I really need to have happen is for $this->$name = $val to be 
evaluated as $this->foo = 1;

I have tried variations of $this->$$name = $val, $this->${$name} = $val, 
etc., but none of them work -- I keep getting an "Undefined variable: foo" 
error from PHP, when very clearly foo has been defined.

This is a very simple example of what I'm actually attempting to implement, 
so please do not reply with, "Well, why not just do: $this->foo = $val"

I'm sure intermediate to advanced PHP developers have run across this issue 
before -- feel free to chime in ;--)

Thanks!

--Noah 

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux