benrowe / laravel-config
一个基本的 Laravel 运行时配置处理器,以简单的键/值形式存储。
v0.2
2016-06-10 07:54 UTC
Requires
- illuminate/contracts: ^5.2
- illuminate/support: ^5.2
Requires (Dev)
- php: >=5.5.9
- phpunit/phpunit: ^4.0
This package is auto-updated.
Last update: 2024-09-21 20:07:51 UTC
README
Laravel 的 运行时 配置处理器,支持分层配置,但存储时数据将被展平为基本的键/值对(这允许更多的存储选项)
<?php use Benrowe\Laravel\Config\Config; $config = new Config([ 'foo.bar[0]' => 'Hello', 'foo.bar[1]' => 'World', 'foo.key' => 'Value' ]); $foo = $config->get('foo'); // => ['bar' => ['Hello', 'World'], 'key' => 'Value'] $bar = $config->get('foo.bar'); // => ['Hello', 'World']
功能
- 可以将配置数据存储到任何持久数据存储中(文件、数据库等)。
- 提供的存储适配器包括 Db、File、Redis。
- 点表示法语法用于配置层次。
- 值可以是简单的字符串,也可以是字符串数组。
- 支持修饰符。修饰符可以被注册以在运行时操纵值。(例如存储 json、日期时间、布尔值等)
- ServiceProvider 包含在内,可以根据提供的配置配置组件
- 支持 Facade
安装
使用 composer 安装库。将以下内容添加到您的 composer.json
{
"require": {
"benrowe/laravel-config": "0.1.*"
}
}
现在运行 install 命令。
$ composer.phar install
这将通过 PSR-4 提供对组件的访问。要将包配置为 Laravel 服务,必须使用提供的 ServiceProvider 注册服务提供者。
配置 Laravel
通过 composer 安装此包后,您需要注册服务提供者。为此,编辑您的 config/app.php 并在 providers 键下添加一个新选项。
Benrowe\Laravel\Config\ServiceProvider::class
此外,您可以注册提供的 facade。
'RuntimeConfig' => Benrowe\Laravel\Config\Facdes\Config::class,
注册服务提供者后,这将提供对配置组件的访问,但是它 没有 配置为持久化您对配置所做的任何更改。为此,您需要发布提供的配置文件。
php artisan vendor:publish --provider="Benrowe\Laravel\Config\ServiceProvider" --tag="config"
这将发布一个 config.php 文件到您的 config 目录。此时,您需要编辑文件并设置您想要持久化配置的方式。
此外,如果您计划在数据库(如 mysql 等)中存储配置,您还需要发布存储配置模式的迁移
php artisan vendor:publish --provider="Benrowe\Laravel\Config\ServiceProvider" --tag="migrations"