0

请帮忙,我如何在 Yii CFormModel 中添加动态变量?

private function magic($name, $value) {
    $this->$name = $value;
}

或者

$form = new FormGenerate($attributes);
$form->temp = '1';

显示异常“未确定的属性”=(

4

2 回答 2

0

我创建变量 $_params;

public function __get($name)
    {
        if (isset($this->_params[$name])) {
            return $this->_params[$name];
        }

        return parent::__get($name);
    }


    public function __set($name, $value)
    {
        if (isset($this->_params[$name])) {
            $this->_params[$name] = $value;
        } else {
            parent::__set($name, $value);
        }
    }

这是工作=)

于 2015-03-14T16:04:01.773 回答
0

在你的课堂上尝试这样的事情

class Test
{
    public function __construct($x)
    {
        $this->{$x} = "dynamic";
    }
}

$a = new Test("bar");
print $a->bar;

尝试改变你的

$this->$name

$this->{$name}

看看会发生什么。

于 2015-03-14T15:51:59.947 回答