【发布时间】:2014-01-07 11:27:10
【问题描述】:
我想知道将一些 Composer 库导入 PyroCMS 应用程序,尤其是在模块中的最佳方式(或至少是一种好的方式)是什么。
我知道 Phil Sturgeon 已经为 CodeIgniter 提出了一种方法,并且 PyroCMS 是建立在 CodeIgniter 之上的。 http://philsturgeon.co.uk/blog/2012/05/composer-with-codeigniter
但是 PyroCMS 正在为 Laravel 放弃 CI,而且 PyroCMS 带来了一个名为 modules 的额外层。
我的意思是,模块应该是独立的,所有内容都在一个文件夹中。这就是为什么我没有关注 Phil Sturgeon 的文章。
这是我目前正在做的一个例子:
my_module/
controllers/
models/
views/
libraries/
Lib1.php
Lib2.php
vendor/
composer.json
...
...
当我需要加载一些 Composer 包时,我将其添加到我的控制器中:
require_once __DIR__'../libraries/vendor/autoload.php';
在大多数情况下,这可以正常工作。
但是,我遇到了一个特定的包,Guzzle。它找不到 CAcert 文件或其他东西...最后,使用 phar 文件导入 Guzzle 救了我。
但如果可能,我宁愿只使用 Composer。所以也许我在加载包的方式上是错误的。也许 Composer 不应该放在这里?
请记住,模块应该能够自行安装。
【问题讨论】:
标签: php codeigniter laravel composer-php pyrocms