如何在Zend Framework 2中使用自定义第三方库

reg*_*int 3 tcpdf zend-framework2

我想在我的ZF2项目中使用TCPDF库.我有库的源,但它与Zend Framework 2命名空间(不是PSR-0)不兼容.如何将其包含在项目中?如果有任何方法可以转换它与ZF2兼容.

如果有一种方法可以使用该库,那么请显示该过程(放置库源的位置以及如何包含它).

请不要建议ZendPdf作为替代方案.谢谢

Adr*_*ian 6

因此,有一种方法可以使用foozy提到的命令行工具来完成此操作,但这会导致更改其他人的代码以及谁想要头疼.您也可以使用autoload:classmap指令使用Composer执行此操作,因为它是一个类,即使它不是PSR-0.

基本上,你会放置TCPDF文件方便的地方(供应商文件夹,lib文件夹等),然后添加自动加载指令composer.json像这样:

{
  "autoload": {
      "classmap": ["vendor/tcpdf"]
  }
}
Run Code Online (Sandbox Code Playgroud)

假设您将tcpdf文件夹放在vendor文件夹中,并且TCPDF类位于tcpdf文件夹的根目录中.然后你跑php composer.phar update.然后,Composer将该文件夹作为源位置添加到它向SPL自动装载器注册的自动装载器功能中.

然后你想在哪里使用TCPDF类$pdf = new \TCPDF().

注意:我不是100%相对于项目根目录,composer.phar或供应商文件夹的路径.