php,动态创建变量

时间:2014-04-27 06:08:20

标签: php class variables object

(抱歉我的英文不好,我使用谷歌翻译)

我面临着在类中动态创建变量的问题。 __construct入口处的类转移到变量。
进一步的周期

foreach ($collector as $key => $field) {
    $this->$key = $field; 
} 

变量被添加到类中。
但是这个代码适用于其他类,除了一个。 这是班级

foreach ($collector as $key => $field) {
     $this->$key = $field;
            if (isset($this->$key))
              var_dump($this->$key);
        }
     var_dump('<pre>',$collector);
     var_dump($this);
     die();

var_dump('<pre>',$collector) - 转储对象

if (isset($this->$key))
var_dump($this->$key)

call magic __get();因为没有变量

var_dump($this) - 转储对象但是我看不到的必要变量。

请帮帮我!

1 个答案:

答案 0 :(得分:1)

你可以这样做:

class MyClass
{
    private $_dynamic;

    function __get($name)
    {
        return $this->_dynamic[$name];
    }

    function __set($name, $value)
    {
        $this->_dynamic[$name] = $value;
    }
}