在php中动态声明一个类中的Variable

DRV*_*VPR 5 php oop foreach constructor dynamically-generated

我在PHP中动态声明类/对象内的变量时遇到了麻烦.

我有一个名为Column的类,它接收一个未知长度的(names => values)的关联数组.

我需要类变量与数组中的名称完全相同(显然它们的值匹配).

由于Variable Variables方法有点令人困惑,当你在它上面添加类/对象声明语法时,我觉得我迷失了一些.

我试过这样的事情:

function __construct($array)
    {
        foreach ($array as $key => $value)
        {
            $this->$key;
            $this->key=$value;          
        }
    }
Run Code Online (Sandbox Code Playgroud)

我通常不会这样做

$this->$key;
Run Code Online (Sandbox Code Playgroud)

我认为$this->key这符合语法,但显然我错了.如果有人可以帮助纠正我,那将非常有帮助.

lau*_*ent 5

只需使用{}语法:

function __construct($array)
    {
        foreach ($array as $key => $value)
        {
            $this->{$key} = $value;          
        }
    }
Run Code Online (Sandbox Code Playgroud)