hxm / database-system-config
save system config value on database
0.1.0
2024-09-30 08:55 UTC
Requires
- php: ^7.0|^8.0
- laravel/framework: ^7.0|^8.0|^9.0|^10.0
README
Stored all configs on your database.
Able to store:
- value can be bool, array, object, datetime, int, float
- set flexible value with dot key
- merge the config value with the system, so that the data can be accessed via Laravel's
config()
helper
Installation
composer require hxm/database-system-config
- Run migrations to create database table:
php artisan migrate
- Publishing the config file
php artisan vendor:publish --provider="HXM\DatabaseSystemConfig\Providers\DatabaseSystemConfigServiceProvider" --tag="database_system_config"
- to disable auto merge config to system, you set value of
merge_config
tofalse
;
<?php return [ 'merge_config' => true, // change to false to disable it //If you disable it, you will not be able to access the value directly through the system config($key) ];
Using
- to save a value into the system
\HXM\DatabaseSystemConfig\Facades\DatabaseSystemConfig::set('group.key.index', $value);
- to get a key:
\HXM\DatabaseSystemConfig\Facades\DatabaseSystemConfig::get('group.key.index', $defaultValue);
- to get all values:
\HXM\DatabaseSystemConfig\Facades\DatabaseSystemConfig::all();
- to get all groups:
\HXM\DatabaseSystemConfig\Facades\DatabaseSystemConfig::groups();
- If the config value of
merge_config
istrue
, you can access the value with:
config()->get($key, $defaultValue);
Please let me know if there is any problem or need any help. Your contribution is valuable to make the package better.
Please note currently for Laravel 7+ until tested and verified in lower versions.