在类中创建动态静态变量?

时间:2011-09-20 02:54:33

标签: php class object static-methods static-variables

是否可以定义动态变量或者无论如何都可以执行以下操作?

示例1:

class base
{
    protected static $$dynamicVar;

    protected function myFunction($value)
    {
        $dynamicVar = $value;
        self::$$dynamicVar = new $value();
    }
}

这段代码背后的想法是实例化新对象,而基类不知道将实例化哪些对象。

我知道实例化新对象可以是动态的,但我需要在静态变量上动态生成。

谢谢,

1 个答案:

答案 0 :(得分:2)

据我所知,这是不可能的,但你可以做这样的事情:

class base
{
   protected static $dynProps = array();

   protected function myFunction($value)
   {
      self::$dynProps[$value] = new $value();
   }
}

这里更重要的问题是“你为什么需要这个?”