ferri / laravel-settings
Laravel 5 数据库持久化设置包
v1.0.0
2016-09-10 17:56 UTC
Requires
- php: >=5.6.4
- illuminate/database: 5.1.*|5.2.*|5.3.*
- illuminate/filesystem: 5.1.*|5.2.*|5.3.*
- illuminate/support: 5.1.*|5.2.*|5.3.*
Requires (Dev)
- mockery/mockery: 0.9.*
- phpunit/phpunit: ~5.0
This package is not auto-updated.
Last update: 2024-09-25 22:31:30 UTC
README
Laravel 5 数据库持久化设置包
支持 Laravel 5.1, 5.2, 5.3
安装
composer require ferri/laravel-settings
将服务提供者添加到您的 config/app.php
...
Ferri\LaravelSettings\ServiceProvider::class,
...
发布配置和迁移
php artisan vendor:publish --provider="Ferri\LaravelSettings\ServiceProvider" --tag=config
php artisan vendor:publish --provider="Ferri\LaravelSettings\ServiceProvider" --tag=migrations
缓存
您可以在获取设置值时禁用缓存。默认值为 true。缓存从 config/cache.php 中激活的驱动程序继承。
'cache' => false,
用法
设置值
设置设置值
Settings::set('key', 'value'); Settings::set('keyArray', ['arrayKey' => 'arrayValue']);
获取值
获取设置值
Settings::get('key'); // value Settings::get('keyArray'); // ['arrayKey' => 'arrayValue'] Settings::get('keyNotExists', 'default'); // default
检查值
确定设置是否存在。
Settings::has('key'); // true Settings::has('keyNotExists'); // false
忘记值
如果启用,则从数据库和缓存中移除设置
Settings::forget('key');
刷新设置
如果启用,则从数据库(截断)和缓存中移除所有设置
Settings::truncate();
设置额外列
有时您想为每个设置指定一些标准。这些列将被添加到每个查询中。这些额外列在调用这些方法之一(set、get、has、forget)后总是重置。
Settings::setExtraColumns(['tenant_id' => 1])->set('site_title', 'Awesome Blog'); Settings::setExtraColumns(['tenant_id' => 1])->get('site_title'); // Awesome Blog Settings::setExtraColumns(['tenant_id' => 2])->get('site_title'); // null
辅助函数
设置实例
解析设置服务实例。
settings();
设置值
设置设置值
settings([$key => $value]);
使用额外列设置设置值
settings([$key => $value], null, ['tenant_id' => 1])
获取值
获取设置值
settings('key'); // value
使用额外列获取设置值
settings($key, $default, ['tenant_id' => 1])
测试
composer install
vendor/bin/phpunit
灵感
此包受到了以下优秀包的启发