Zend framework2 Zend framework 2:class#u exists(';mPDF';)返回true,但new mPDF()失败

Zend framework2 Zend framework 2:class#u exists(';mPDF';)返回true,但new mPDF()失败,zend-framework2,mpdf,Zend Framework2,Mpdf,我希望在控制器中使用mPDF,如下所示(测试场景): 类mPDF是在mPDF.php文件中声明的,我已经检查了文件是否被加载,它是否被加载。要解决这个问题,您必须在类名称前面添加\n以重置名称空间 function indexAction() { require_once('libraries/mpdf/mpdf.php'); var_dump(class_exists('mPDF')); //prints true $mpdf = new \mPDF(); //fail

我希望在控制器中使用mPDF,如下所示(测试场景):


类mPDF是在mPDF.php文件中声明的,我已经检查了文件是否被加载,它是否被加载。

要解决这个问题,您必须在类名称前面添加\n以重置名称空间

function indexAction() {
    require_once('libraries/mpdf/mpdf.php');
    var_dump(class_exists('mPDF')); //prints true
    $mpdf = new \mPDF(); //fails with 'class not found in Application/Controller (current namespace)
}
错误消息就是这方面的线索

//在应用程序/控制器(当前命名空间)中找不到“类”失败

然而,我不知道为什么类_exist返回true。当我的类在autoload_classmap.php中时,它并没有这样做,但当我遇到同样的问题时,我需要_

另外,如果您不想在函数中输入php文件,可以将其添加到模块根目录下的类mapp文件中

<?php
// Generated by ZF2's ./bin/classmap_generator.php
return array(
    'mPDF'                          => __DIR__ . 'path/to/file/mpdf.php',
);

<?php
// Generated by ZF2's ./bin/classmap_generator.php
return array(
    'mPDF'                          => __DIR__ . 'path/to/file/mpdf.php',
);