philf / setting
Laravel 持久化配置设置 - 使用 JSON 在文件中创建、读取、更新和删除设置
Requires
- php: >=5.3.0
- illuminate/support: ~4
Requires (Dev)
- phpunit/phpunit: 3.7.*
This package is not auto-updated.
Last update: 2018-05-16 09:41:35 UTC
README
Laravel Setting
Laravel 持久化配置设置 - 使用 JSON 在文件中创建、读取、更新和删除设置。
这个包是我无法以更持久的方式将新设置保存到配置文件时的产物。
这个包的设计并不是要替代 Laravel 目前提供的配置解决方案,而是要补充它,并与它一起使用。
默认情况下,数据存储在 app_path().'/storage/meta/setting.json',但这可以通过配置文件或实时轻松更改。
此包还为 Laravel Config 门面提供回退,您可以在配置中设置它,如果键在 JSON 文件中找不到,它将在 Config 门面中查找。
贡献者
janhartigan (Treeface)
Nils Plaschke (Chumper)
安装
在 composer.json 中添加此包
"philf/setting": "dev-master"
并将 ServiceProvider 添加到 app/config/app.php 中的 providers 数组中
'Philf\Setting\SettingServiceProvider',
用法
##配置
return array(
'path' => app_path().'/storage/meta',
'filename' => 'setting.json',
'fallback' => true,
'autoAlias' => true,
);
##内置回退能力。 // 自动回退到 Laravel 配置 Setting::get('app.locale');
##单维度
set: Setting::set('name', 'Phil')
get: Setting::get('name')
forget: Setting::forget('name')
has: Setting::has('name')
#多维度
set: Setting::set('names.firstName', 'Phil')
set: Setting::set('names.surname', 'F')
or
set: Setting::set('names', array('firstName' => 'Phil', 'surname' => 'F'))
setArray: Setting::setArray(array('firstName' => 'Phil', 'surname' => 'F'))
get: Setting::get('names.firstName')
forget: Setting::forget('names.surname'))
has: Setting::has('names.firstName')
#数组处理 // 获取 names 数组中的所有条目 $names = Setting::get('names');
foreach ($names as $key => $val) { ... }
// Get the whole array
$everything = Setting::get();
您还可以使用 clear 命令清除 JSON 文件
clear: Setting::clear()
使用不同的路径(确保路径存在且可写) *
Setting::path(app_path().'/storage/meta/sub')->set('names2', array('firstName' => 'Phil', 'surname' => 'F'));
使用不同的文件名
Setting::filename('setting2.json')->set('names2', array('firstName' => 'Phil', 'surname' => 'F'));
使用不同的路径和文件名(确保路径存在且可写)
Setting::path(app_path().'/storage/meta/sub')->filename('dummy.json')->set('names2', array('firstName' => 'Phil', 'surname' => 'F'));
许可证
Laravel Setting 是开源软件,许可证为 MIT 许可