mlk9/setting-laravel

Laravel 的设置(加密)

v3.0.3 2024-01-09 09:24 UTC

This package is auto-updated.

Last update: 2024-09-11 08:12:00 UTC


README

Laravel 的设置(加密)保存数据库
加密文档 https://laravel.net.cn/docs/encryption
哈希盐方法

要求

  • Laravel 6+
  • PHP +8.2

安装

  • 通过 composer
composer require mlk9/setting-laravel
  • 发布供应商
php artisan vendor:publish --tag=setting-laravel
  • 迁移表
php artisan migrate

使用方法

设置数据

Setting::set('KEY_NAME','VALUE'); 
//or
Setting::set([
'KEY_NAME' => 'VALUE',
'KEY_NAME' => 'VALUE'
]); 

获取数据

Setting::get('KEY_NAME','DEFAULT_VALUE',$salts = []); 

键存在

Setting::exists('KEY_NAME'); //output : bool

销毁数据

Setting::destroy('KEY_NAME'); 

销毁所有数据

Setting::destroyAll(); 

获取所有数据

Setting::all(); 

刷新盐

Setting::refreshSalts();

当你需要更改盐时,可以使用此方法替换旧盐以配置新包

Setting::changeOldSalts(array $oldSalts);

配置使用

方法 1(推荐)

替换所有配置数据为设置数据

//must be same key name
Setting::set(['app.name' => 'Maleki']); 
//uses at \app\Providers\AppServiceProvider.php in boot
Setting::replaceAllConfigs();

方法 2(自定义)

替换自定义配置数据为设置数据

//in page save
Setting::set(['seo.site.name' => 'Maleki']); 
//uses at \app\Providers\AppServiceProvider.php in boot
Setting::replaceConfigs(['app.name' => 'seo.site.name']);
//for test
config('app.name') // return : Maleki

方法 3(不推荐)

app\Providers\AppServiceProvider.php

public function boot()
   {
    Config::set('services.example.exam1',Setting::get('example.exam'));
   }