工厂设计模式与动态类名称

时间:2013-12-10 07:59:23

标签: php design-patterns namespaces factory-pattern

我正在尝试创建一个工厂设计模式,它将生成具有动态类名的类。

我的代码:

namespace FOO;

class MyFactory {
    public static function create($name) {
        return new \FOO\$name;
    }

}

我收到解析语法错误(如netbeans所示)。那是可能还是好的做法? 感谢

编辑: 解析错误:“预期标识符之后的意外变量名称”

1 个答案:

答案 0 :(得分:1)

要使用变量名实例化类,需要将整个名称(包括名称空间)放入变量中:

$name = "Foo\\$name"; // note: no leading backslash
return new $name;