cakephp - 如何在 CakePHP 插件中使用 Composer 包

标签 cakephp composer-php cakephp-2.0

我将开发一个依赖于 Composer 包的 CakePHP 2 插件。该软件包安装在“APP/Vendor”目录中。我的插件位于“APP/Plugin”中。

我应该将 App::import('Vendor', array('file' => 'autoload')); 放入我的插件文件中吗?

最佳答案

如果 app/Vendor 中的包是通过 composer 安装的,则应由

进行自动加载
require APP . 'Vendor/autoload.php';

在您的app/Config/bootstrap.php中。

但是,如果它已下载并复制到 /app/Vendor,您应该手动导入它:

App::import('Vendor', 'packageFolder/filename');

这同样适用于插件。如果您在 Plugin/PluginName/composer.json 中的 "require": 中声明依赖项,这些依赖项将与您的插件一起安装,并添加到 app/Vendor/autoload.php,所以不需要手动导入。

如果包已下载到 /app/Plugin/PluginName/Vendor/,您必须通过

加载它
App::import('Vendor', 'PluginName.packageFolder/filename');

关于cakephp - 如何在 CakePHP 插件中使用 Composer 包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34478478/

相关文章:

javascript - Jquery 触发了太多的 ajax 请求

cakephp - 如何限制每个记录/组包含的关联?

session - 关闭浏览器时销毁 CakePHP session

composer-php - 如何将 "dev-master@dev"包含在 composer 的子依赖项中?

php - Cakephp - 在 View 页面的不同位置显示 flash 消息

cakephp - mysql-real-escape-string : Access denied in CakePHP

php - Composer.json 应根据 php 版本使用不同的包版本

symfony - 更新 Symfony2 上的composer.phar

mysql - 如何从 CakePHP 库中引用数据库

cakephp - CAKEPHP 2.0 中管理员和用户的 session 超时不同。是否可以?