我有一个结构如下的类:
class Test {
private $var1;
private $var2;
private $var3;
public function __construct($params) {
foreach($params as $key => $value) {
$this->$key = $value;
}
}
}
这个想法是,我可以在实例化新对象时传递任意数量的参数。例如,我可以做:
$params['var2'] = "Variable 2 Instantiated";
$params['var3'] = "Test";
$test = new Test($params);
这只会实例化 $test->var2 和 $test->var3。
到目前为止,我一直在编写赋值列表,但是如果我想实例化一个只有一半可用成员的对象,我必须检查是否已设置值等。
所以实际的问题是:
将值分配给动态类成员的正确语法是什么?
$this->$var = $var2
根据我的例子,不起作用。我尝试谷歌搜索没有运气。
您的示例已经完美运行。看到它在 codepad.org 上工作。