2014-10-30 82 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執行容易出錯的工作,並且如果您無法提供基礎結構以在部署期間稍後添加依賴項,請提交供應商文件夾。