2014-10-30 109 views
0

我有一个项目,我无法安装或使用composer。CodeIgniter:使用无Composer的Composer库

但是,我想使用OmniPay库,这是一个作曲家包。所以我想把这些库拿出来作为Code Igniter中的标准库使用。

这是我从作曲家安装(下面)得到的。如果我将它们放入我的application/libraries/文件夹中,如何将它们加载到我的控制器中?

enter image description here

回答

0

我认为最简单的办法就是真正要开发的机器上使用作曲,然后提交供应商文件夹复制到存储库。

如果你不想这样做,你必须手动完成Composer所做的步骤。这比您想象的要复杂得多:

最后一步是从包中提取源代码,将其放在合适的位置,然后为其重新创建自动加载。这很简单,因为自动加载通常是PSR-0或PSR-4。 “Onmipay/Common”有一个附加类,它不适合这个并且被Composer加载为classmap,所以这个类必须额外处理。

在此之前的更复杂的一步:Omnipay也使用“guzzle/http”作为HTTP客户端,以及“symfony/http-foundation”。这些软件包还需要包含在文件中,然后包含它们各自的自动加载。并且这些还依赖于自动加载和依赖关系...

让Composer执行容易出错的工作,并且如果您无法提供基础结构以在部署期间稍后添加依赖项,请提交供应商文件夹。