使用存储类名称的变量动态实例化类


Dynamic instantiation of classes using a variable that stores de class name

我正在尝试以常规方式实例化类,使用一个变量来存储要实例化的类的名称。

use DefaultBundle'Form'CategoryType;
class DefaultController extends Controller
{
    public function indexAction()
    {
        $classname = 'CategoryType::class';
        //$form = $this->createForm(CategoryType::class);
        $form = $this->createForm($classname);

但我得到了这个错误:

无法加载类型"CategoryType::class"

正如你所能想象的,我使用评论行没有任何问题。

删除引号。

$classname = CategoryType::class;

否则,它将传递字符串文本CategoryType::class,而不是类名