I don't know the details of your app, but you might want to reconsider a resdesign. Having said that, your code actually works for me. If I use your class as is, foo is 1. That is: $x = new test; echo $x->foo; outputs 1. Isn't that what you want? Regards, Bruce >>> "PHP" <sit1way@xxxxxxxxxxx> 9/03/2007 6:10:49 p.m. >>> 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 -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php