PHP code example of timurturdyev / simple-settings
1. Go to this page and download the library: Download timurturdyev/simple-settings library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
timurturdyev / simple-settings example snippets
use TimurTurdyev\SimpleSettings\Facades\Setting;
Setting::set('site_name', 'My App');
$name = Setting::get('site_name'); // 'My App'
$name = Setting::get('missing', 'default'); // 'default'
Setting::has('site_name'); // true
Setting::remove('site_name'); // удалить конкретный ключ
Setting::removeAll(); // удалить все настройки группы
Setting::all(); // Collection всех настроек текущей группы
Setting::flushCache();
use TimurTurdyev\SimpleSettings\Contracts\SettingStorageInterface;
$settings = app(SettingStorageInterface::class);
$settings->set('site_name', 'My App');
// forGroup() — возвращает новый изолированный экземпляр
$email = Setting::forGroup('email');
$email->set('host', 'smtp.example.com');
$email->get('host'); // 'smtp.example.com'
Setting::get('host'); // null — другая группа
// group() — алиас для forGroup(), тоже возвращает новый экземпляр
Setting::group('email')->get('host');
Setting::withEvents()->set('key', 'value');
Setting::withEvents()->remove('key');
// Отключить явно, даже если в конфиге включено:
Setting::withoutEvents()->set('key', 'value');
// Работает в связке с группами:
Setting::forGroup('email')->withEvents()->set('host', 'smtp.example.com');
use TimurTurdyev\SimpleSettings\Events\SettingSaved;
use Illuminate\Support\Facades\Event;
Event::listen(SettingSaved::class, function (SettingSaved $event) {
// $event->key, $event->value, $event->group
// $event->oldValue, $event->existed
});