ionutmilica / laravel-settings
2.0.1
2017-06-09 16:07 UTC
Requires
- php: >=5.4.0
- illuminate/database: ~5.0
- illuminate/session: ~5.0
Requires (Dev)
- phpunit/phpunit: 4.*
This package is not auto-updated.
Last update: 2024-09-14 19:03:54 UTC
README
Laravel settings 是一个为我们的项目制作的 composer 包,允许开发者将设置持久化到数据库或 JSON 文件中。
安装
需要 PHP 5.4+ 和 Laravel 5.*。
要获取 Laravel Settings 的最新版本,请运行以下命令
composer require ionutmilica/laravel-settings
一旦安装了 Laravel Settings,您需要注册服务提供器。打开 config/app.php
并将以下内容添加到 providers
键。
'IonutMilica\LaravelSettings\SettingsServiceProvider'
如果您喜欢,可以在您的 config/app.php
文件的 aliases
键中注册 Settings 门面。
'Settings' => 'IonutMilica\LaravelSettings\Facade'
如果您想有持久化的设置,您需要在 app/Http/Kernel.php
中添加一个新的中间件到 middleware
键。
'IonutMilica\LaravelSettings\SavableMiddleware',
Laravel settings 默认驱动设置为 json。如果您想更改它,可以执行 artisan vendor:publish
命令,然后修改 app/config/settings.php
文件。
如果您选择数据库驱动,您也应该使用 php artisan migrate
迁移数据库。
如何使用它
为了简单使用,我们提供了一个助手,它提供了您所需的所有功能
- 获取值
$canRegister = settings('restrictions.register'); if (! $canRegister) { // do something } // Fetching with default value $canRegister = settings('restrictions.register', false); // Fetching and save the setting if it does not exist $canRegister = settings('restrictions.register, false, true);
- 存储新的设置或编辑旧的设置?
settings()->set('my-setting', 'some-value');
- 检查设置是否存在
if (settings()->has('my-setting')) { // do something }
- 想删除不再需要的设置?
settings()->forgot('my-setting');
- 强制将设置保存到数据存储中
settings()->set('the-answer', 42); settings()->save();
您还可以将设置实例注入到您的 Laravel 控制器中
use IonutMilica\LaravelSettings\SettingsContract; class RegistrationController extends Controller { public function register(Request $request, SettingsContract $settings) { if ($settings->get('restrictions.registration')) { return redirect()->back(); } // Do something } }
更多示例将随后提供!