b-deshayes / laravel-settings

πŸ”‘ Simple key/value secure settings systme stored in database

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

laravel-settings

Units tests

Simple key/value secure settings stored in database

Installation

Install the package via composer.

composer require kotus/laravel-settings

Publish the config file and fill in the configs. Be sure to provide defaults settings before running the php artisan migrate command.

php artisan vendor:publish --provider="Kotus\Settings\Providers\SettingsServiceProvider" --tag="config"

Be sure to run migration to create the settings table.

php artisan migrate

Usage

You can now use any of the following methods to handle your settings.

 Settings::get($key = null, array $options = [])
 Settings::has(string $key, array $options = []): bool
 Settings::set(string $key, string $value, array $options = []): bool
 Settings::add(string $key, string $value, array $options = []): bool
 Settings::flushCache(array $tenants = []): void

At any point, you can pass a specific tenant in option like this:

$value = Settings::get('my_settings', ['tenant' => 'my_tenant']);

All settings are cache by tenant category depending on the ttl defined in config file. Default is 30 minutes. Whenever you add or change a setting, the cache is flush.

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

License

MIT

About

πŸ”‘ Simple key/value secure settings systme stored in database

License:MIT License


Languages

Language:PHP 100.0%