我試圖將一個專有的第三方庫集成到我的CakePHP應用程序中。我能在手冊中找到的是App Class部分,但它基本上是一組示例,而不是一個正確的解釋,所以我試圖猜測。加載第三方非CakePHP庫
我,你應該使用App::uses()
替代可能時,起初我還以爲我是幸運的,因爲這段代碼的印象:
App::build(
array(
'Vendor' => array(
APP . 'Vendor' . DS . 'Acme' . DS. 'API-1.0' . DS . 'base',
APP . 'Vendor' . DS . 'Acme' . DS. 'API-1.0' . DS . 'foo',
APP . 'Vendor' . DS . 'Acme' . DS. 'API-1.0' . DS . 'bar',
)
)
);
debug(App::objects('Vendor'));
...產生這樣的輸出:
array(
(int) 0 => 'Autoload',
(int) 1 => 'ConstantsBase',
(int) 2 => 'Foo',
(int) 3 => 'Bar',
)
然而,我不能做任何這樣的事情:
App::uses('Foo', 'Vendor');
new Foo();
...三ggers:
Error: Class 'Foo' not found
CakePHP如何知道庫類,但不會加載它們?
您是否在項目中使用了composer,供應商庫是否也支持composer? – burzum
我看到了'composer.json'文件,但我對它並不熟悉。 –
您是否熟悉其他軟件包管理員?作曲家非常相似,現在是PHP世界的常用工具。我建議你使用它,因爲它帶有一個標準的自動加載器,你也可以通過它來管理你的依賴關係。 http://book.cakephp.org/2.0/en/installation/advanced-installation.html#installing-cakephp-with-composer – burzum