在Zend 2

时间:2016-06-28 12:14:19

标签: php zend-framework2 autoload

我目前正在尝试通过其名称获取类的实例。我有一个控制器,在这个控制器中,我希望通过 classname 获得一个类的实例。我知道该类将位于名称空间 MyModule \ Entity

使用Zend 2动态创建类实例的最佳方法是什么?

namespace MyModule\Controller;

class MyController extends AbstractActionController {

public function indexAction() {
    $className = "myclass"; // File myclass.php
    $class = ??? // create instance by $className
    $class->process();
}

2 个答案:

答案 0 :(得分:1)

在ZF1我会做

$class = new MyModule_Entity_Classname();

我不知道这是否在ZF2中发生了变化。

答案 1 :(得分:0)

如果你使用composer并且配置正确,你可以使用:

$class = new $className;

$className应该是班级的全名,例如\MyModule\MyClass