phanan/cascading-config
最新稳定版本:2.0.0
Composer 安装命令:
composer require phanan/cascading-config
包简介
Bringing the cascading configuration system back to Laravel 5.
README 文档
README
A simple package that brings the cascading configuration system back into Laravel 5 and its sister project, Lumen.
Requirements
- Laravel 5, or
- Lumen >=5.1
Features
- Laravel-4 style cascading config (can't believe I'm writing this)
- Nested configuration is fully supported
Installation
First, require phanan/cascading-config into your composer.json and run composer update:
"require": {
"phanan/cascading-config": "~2.0"
},
An environment-based configuration directory should have a name with this format config.{APP_ENV}, and reside in the same directory as the default config dir. For Laravel, php artisan vendor:publish
will create a sample directory for your local environment. For Lumen, you'll have to create the directories manually.
Your application structure now should have something like this:
config
├── app.php
├── auth.php
├── cache.php
├── compile.php
├── database.php
├── mail.php
└── ...
config.local
├── app.php
├── auth.php
├── cache.php
├── mail.php
└── nested
└── app.php
Fill the configuration into your environment-based config directory (config.local, config.staging, config.production), just like what you've always done in Laravel 4,
Usage
For Laravel
-
Add the package's service provider class into
config/app.php:'providers' => [ /* * ... */ App\Providers\AppServiceProvider::class, App\Providers\EventServiceProvider::class, App\Providers\RouteServiceProvider::class, PhanAn\CascadingConfig\CascadingConfigServiceProvider::class, ],
-
Call
config($key)
For Lumen
-
Register the service provider class in
bootstrap/app.php:// $app->register(App\Providers\AppServiceProvider::class); // $app->register(App\Providers\EventServiceProvider::class); $app->register(PhanAn\CascadingConfig\CascadingConfigServiceProvider::class);
-
Enable multi-environment support by uncommenting this line:
Dotenv::load(__DIR__.'/../');
-
Manually register the configuration arrays:
$app->configure('auth'); $app->configure('cache'); $app->configure('mail');
-
Call
config($key)
Notes
Because of the way array_merge_recursive() works, a config key with value being an indexed (non-associative) array (for instance, app.providers) will have the value's items overridden. See #6 for more details on this behavior, and how to work around it.
License
MIT © Phan An
统计信息
- 总下载量: 147.99k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 55
- 点击次数: 1
- 依赖项目数: 2
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2015-02-12