Yii现在似乎很流行,使用composer也很流行(而不是手动安装PHP库),所以我决定给予一试。
不管怎样,这些是我的步骤:
1./var/www/html中的mkdir“yii-dev”(我的机器运行Debian 7 64)
- mkdir -p yii-dev/受保护的/配置
1.在/yii-dev/protected/config中创建一个composer.json:
{ "repositories": [
{
"type":"composer",
"url": "http://packages.phundament.com"
}
],
"require": {
"php": "5.6.5",
"yiisoft/yii": "1.1.6",
"yiiext/migrate-command": "0.7.2"
},
"config": {
"bin-dir": "bin/"
},
"autoload": {
"psr-0": {
"config": "./"
}
},
"scripts": {
"pre-install-cmd": "config\\ComposerCallback::preInstall",
"post-install-cmd": "config\\ComposerCallback::postInstall",
"pre-update-cmd": "config\\ComposerCallback::preUpdate",
"post-update-cmd": "config\\ComposerCallback::postUpdate",
"post-package-install": ["config\\ComposerCallback::postPackageInstall"],
"post-package-update": ["config\\ComposerCallback::postPackageUpdate"]
} }
1.然后在yii-dev/config中添加console.php:
<?php
return array(
'aliases' => array(
'vendor' => 'application.vendor',
),
'basePath' => dirname(__FILE__) . DIRECTORY_SEPARATOR .'..',
'name' => 'My Awesome Yii Site',
'components' => array(
'db' => array(
// PostgreSQL
'connectionString' => 'pgsql:host=localhost;dbname=yii_dev',
'emulatePrepare' => true,
'username' => 'yii',
'password' => 'yii123',
'charset' => 'utf8',
),
),
'params' => array(
'composer.callbacks' => array(
// args for Yii command runner
'yiisoft/yii-install' => array('yiic', 'webapp', dirname(__FILE__).DIRECTORY_SEPARATOR.'..'.DIRECTORY_SEPARATOR.'..'),
'post-update' => array('yiic', 'migrate'),
'post-install' => array('yiic', 'migrate'),
),
),
);
1.最后是yii-dev/protected/config中的ComposerCallback.php,内容有点长,所以我就不放在这里了,可以在http://www.shanedowling.com/yii-with-composer/中找到
然后,当我运行“composer install”时,我得到这个:
$ composer安装
Phundament 3安装程序nn * 下载composer.json中指定的软件包
- 触发器编写器回调nn是否开始安装?[yes|否]是
PHP致命错误:没有在/var/www/html/yii-dev/protected/config/composerCallback. php中的第182行找到类'config\Yii'
致命错误:没有在/var/www/html/yii-dev/protected/config/composerCallback. php中的第182行找到类'config\Yii'
如何解决这个问题?
1条答案
按热度按时间hts6caw31#
这可能是一个老问题了。但是我今天仍然要面对同样的问题,把composer配置到我们现有的一个老系统上,这个系统使用的是Yii1.1。这就是我所做的,它正在工作。
我的项目结构是:
所以,我把composer安装在/website/目录下。
本地安装composer
要将系统更新为需要autoload.php,请将以下内容添加到website/protected/config/main.php
将以下内容添加到网站/中的.htaccess
全部完成。安装您想要的
参考编号:https://devreadwrite.com/posts/add-the-composer-to-the-application-on-yii