3

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

如果有办法按原样使用库,请显示该过程(在哪里放置库源以及如何包含它)。

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

4

1 回答 1

6

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

基本上,您可以将 TCPDF 文件放在方便的地方(供应商文件夹、lib 文件夹等),然后将 autoload 指令添加到 composer.json,如下所示:

{
  "autoload": {
      "classmap": ["vendor/tcpdf"]
  }
}

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

然后,无论您想在哪里使用 TCPDF 类,您都会这样做$pdf = new \TCPDF()

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

于 2013-09-05T04:23:50.023 回答