yiisoft / yii2-composer
Yii 扩展安装器的 Composer 插件
2.0.10
2020-06-24 00:04 UTC
Requires
- composer-plugin-api: ^1.0 | ^2.0
Requires (Dev)
- composer/composer: ^1.0 | ^2.0@dev
- phpunit/phpunit: <7
This package is auto-updated.
Last update: 2024-09-17 11:17:15 UTC
README
Yii 2 Composer 安装器
这是用于 Yii 框架 2.0 扩展的 Composer 安装器。它实现了一个新的 composer 包类型名为 yii2-extension,如果它们作为 composer 包发布,所有 Yii 2 扩展都应该使用该类型。
有关许可信息,请参阅 LICENSE 文件。
使用方法
当通过 Composer 安装框架时,Yii 2 Composer 安装器会自动安装。
要使用 Yii 2 Composer 安装器,只需将包的 type 设置为 yii2-extension 在您的 composer.json 中,如下所示
{
"type": "yii2-extension",
"require": {
"yiisoft/yii2": "~2.0.0"
},
...
}
您可以在 extra 部分指定一个引导类。类的 init() 方法将在每次 Yii 2 应用程序响应请求时执行。例如,
{
"type": "yii2-extension",
...,
"extra": {
"bootstrap": "yii\\jui\\Extension"
}
}
Installer 类还实现了静态方法 postCreateProject(),可以在创建 Yii 2 项目后通过 post-create-project-cmd composer 脚本调用。存在类似的方法在每次 composer install 调用后运行任务,这是 postInstall()。这些方法允许运行其他 Installer 类方法,如 setPermission() 或 generateCookieValidationKey(),具体取决于在 composer.json 文件的 extra 部分中设置的相应参数。例如,
{
"name": "yiisoft/yii2-app-basic",
"type": "project",
...
"scripts": {
"post-create-project-cmd": [
"yii\\composer\\Installer::postCreateProject"
],
"post-install-cmd": [
"yii\\composer\\Installer::postInstall"
]
},
"extra": {
"yii\\composer\\Installer::postCreateProject": {
"setPermission": [
{
"runtime": "0777",
"web/assets": "0777",
"yii": "0755"
}
]
},
"yii\\composer\\Installer::postInstall": {
"copyFiles": [
{
"config/templates/console-local.php": "config/console-local.php",
"config/templates/web-local.php": "config/web-local.php",
"config/templates/db-local.php": "config/db-local.php",
"config/templates/cache.json": ["runtime/cache.json", true]
}
],
"generateCookieValidationKey": [
"config/web-local.php"
]
}
}
}