我想使用 TCPDF我的 ZF2 项目中的库。我有库的来源,但它与 Zend Framework 2 命名空间(不是 PSR-0)不兼容。如何将其包含在项目中?如果有任何方法可以将其转换为与 ZF2 兼容。
如果有办法按原样使用该库,请说明过程(将库源放在何处以及如何包含它)。
请不要推荐 ZendPdf 作为替代品。 谢谢
最佳答案
因此,foozy 提到了一种使用命令行工具执行此操作的方法,但这会导致更改其他人的代码,谁愿意为此头疼。您也可以使用 autoload:classmap directive 通过 Composer 执行此操作因为它是一个类,即使它不是 PSR-0。
基本上,您会将 TCPDF 文件放在方便的地方(vendor 文件夹、lib 文件夹等),然后将自动加载指令添加到 composer.json,如下所示:
{
"autoload": {
"classmap": ["vendor/tcpdf"]
}
}
假设您将 tcpdf 文件夹放在 vendor 文件夹中,并且 TCPDF 类位于 tcpdf 文件夹的根目录中。然后运行 php composer.phar update
。 Composer 然后将该文件夹作为源位置添加到它向 SPL 自动加载器注册的自动加载器功能。
那么无论你想在哪里使用 TCPDF 类,你都可以使用 $pdf = new\TCPDF()
。
注意:我并不是 100% 在相对于项目根目录、composer.phar 或供应商文件夹的路径上。
关于zend-framework2 - 如何在 Zend Framework 2 中使用自定义第三方库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18620452/