2017 © Pedro Peláez
 

library laravel-settings

Laravel 5 persistent settings in database package

image

ferri/laravel-settings

Laravel 5 persistent settings in database package

  • Saturday, September 10, 2016
  • by ferrisutanto
  • Repository
  • 3 Watchers
  • 3 Stars
  • 28 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 1 Open issues
  • 2 Versions
  • 4 % Grown

The README.md

Laravel Settings

Build Status StyleCI Total Downloads License, (*1)

Laravel 5 persistent settings in database package, (*2)

Support Laravel 5.1, 5.2, 5.3, (*3)

Installation

composer require ferri/laravel-settings

And add service provider to you config/app.php, (*4)

...

Ferri\LaravelSettings\ServiceProvider::class,

...

Publish config and migration, (*5)

php artisan vendor:publish --provider="Ferri\LaravelSettings\ServiceProvider" --tag=config
php artisan vendor:publish --provider="Ferri\LaravelSettings\ServiceProvider" --tag=migrations

Cache

You can disable cache when get setting value. Default is true. Cache is inherit from active driver in config/cache.php, (*6)

'cache' => false,

Usage

Set value

Set setting value, (*7)

Settings::set('key', 'value');
Settings::set('keyArray', ['arrayKey' => 'arrayValue']);

Get value

Get setting value, (*8)

Settings::get('key'); // value
Settings::get('keyArray'); // ['arrayKey' => 'arrayValue']
Settings::get('keyNotExists', 'default'); // default

Check value

Determine if setting exists., (*9)

Settings::has('key'); // true
Settings::has('keyNotExists'); // false

Forget value

Remove setting from database and cache if enabled, (*10)

Settings::forget('key');

Flush settings

Remove all setting from database (truncate) and cache if enabled, (*11)

Settings::truncate();

Set Extra Columns

Sometime you want to specify some criteria for each your setting. This columns will be added to each query. Extra columns always resetted after call of one these methods set, get, has, forget., (*12)

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

Helpers

Settings Instance

Resolve settings service instance., (*13)

settings();

Set value

Set setting value, (*14)

settings([$key => $value]);

Set setting value with extra columns, (*15)

settings([$key => $value], null, ['tenant_id' => 1])

Get value

Get setting value, (*16)

settings('key'); // value

Get setting value with extra columns, (*17)

settings($key, $default, ['tenant_id' => 1])

Testing


composer install vendor/bin/phpunit

Inspiration

This package was inspired by these great packages - https://github.com/anlutro/laravel-settings - https://github.com/edvinaskrucas/settings - https://github.com/efriandika/laravel-settings, (*18)

The Versions

10/09 2016

dev-master

9999999-dev

Laravel 5 persistent settings in database package

  Sources   Download

MIT

The Requires

 

The Development Requires

by Ferri Sutanto

database laravel settings persistent

10/09 2016

v1.0.0

1.0.0.0

Laravel 5 persistent settings in database package

  Sources   Download

MIT

The Requires

 

The Development Requires

by Ferri Sutanto

database laravel settings persistent