我想在我的项目中解析PDF文档,我正在使用Yii框架,我能够加载ZendFramework 1.12,实际上我正在成功使用Zend_Lucene和Zend_Mail,但是ZendPdf无法解析PDF,所以我想尝试使用ZF2(ZendFramework 2),但我无法使其工作......我刚刚下载了ZF2库并将以下内容添加到我的基础控制器中:
public function __construct($id,$module=null){
Yii::import('application.vendors.ZendFramework.library.*');
Yii::setPathOfAlias('Zend',Yii::getPathOfAlias('application.vendors.ZendFramework.library.Zend'));
parent::__construct($id,$module);
}
所以每次我使用Controller时都会执行此代码。然后在控制器中我有:
use ZendPdf\PdfDocument;
use Zend\Mail;
class AjaxController extends Controller{...
...
public function actionTestPdf(){
$filepath = realpath('./path/').'/pdftest2.pdf';
$pdf = PdfDocument::load($filepath);
}
当我运行控制器时:/ ajax / TestPdf 我得到:致命错误:未找到类'ZendPdf \ PdfDocument'
我做错了什么?
答案 0 :(得分:0)
我建议您使用编辑器和include the autoloader from composer安装ZF2内容以获得PSR兼容的自动加载功能。
备选方案1)
您也可以尝试将alias
ZendPdf\PdfDocument
指向类文件位置。
替代方案2)
import
应用程序配置中所需的类或目录。
答案 1 :(得分:0)
在这种特殊情况下,我建议不要使用ZF2中的ZendPdf,因为它在功能上等同于ZF1中的Zend_Pdf,所以你要做的就是通过类加载等增加不必要的复杂性,但不解决你的根本问题,因为文档仍然很可能不会使用ZF2中的ZendPdf加载。
您应该调查文档无法在ZF1中加载的根本原因。