为 Laravel 提供简单持久化设置管理

1.0.0 2020-06-28 08:02 UTC

This package is auto-updated.

Last update: 2024-09-29 05:55:40 UTC


README

为 Laravel 提供简单持久化设置管理。

安装

Settings 是一个 Laravel 包。您可以通过 Composer 安装它。在您的项目目录下从终端运行此命令

composer require laravel-backbone/settings

现在在终端中运行此命令以发布此包资源

php artisan vendor:publish --provider="LaravelBackbone\Settings\Providers\SettingsServiceProvider"

如果您运行 vendor:publish,那么您需要在您的设置模型中添加以下代码

protected $table = 'lb_settings'; // you can change your database table name.
public $timestamps = false;

使用特性

在您的设置模型中使用 GetSettings 特性。

API 列表

all

要获取所有按键配对的设置值,您可以使用 all 方法。

YourSettingModel::all(); // return collection

set

要设置值,您可以使用 set 方法。

YourSettingModel::set('key', 'value'); // return null

通过键存储多个数据

YourSettingModel::set(['key1' => 'value', 'key2' => ['subkey2' => 'value-of-subkey2'] ]); // return null

get

要获取值,您可以使用 get 方法。

YourSettingModel::get('key'); // return collection or string or null

支持回退

YourSettingModel::get('key2.subkey2'); // return collection or string or null

您也可以获取所有设置值

YourSettingModel::get(); // return collection

has

要检查键是否存在,您可以使用 has 方法。

YourSettingModel::has('key'); // return bool

多个键忘记

YourSettingModel::has(['key1', 'key2']); // return collection

forget

要删除键,您可以使用 forget 方法。

YourSettingModel::forget('key'); // return integer 0 or 1

多个键忘记

YourSettingModel::forget(['key1', 'key2']); // return integer - how many key successfully delete.

助手

获取/设置指定的设置值。如果传递了一个数组作为键,我们将假设您想要设置一个值数组。

$value = settings('app.timezone');
$value = settings('app.timezone', $default);

您可以通过传递键/值对的数组来设置设置变量

settings(['app.debug' => true]);