patkruk/laravel-cached-settings

为 Laravel 4 提供简单的缓存配置容器

1.0.6 2014-01-30 02:32 UTC

This package is not auto-updated.

Last update: 2024-09-28 15:23:42 UTC


README

Build Status

提供一个基本的容器,用于存储您的配置参数和设置。

键值对存储在您的数据库中,如果包配置文件中启用了缓存,也将存储在您的缓存系统中。当您尝试从容器中检索值时,缓存系统总是首先进行检查,如果值存在,则永远不会触及数据库层。如果值不在您的缓存中,它将从持久存储中检索,并自动添加到缓存层。

该包使用当前环境名称来组织设置,以便允许您根据应用程序运行的环境有不同的值。因此,在“本地”添加的值将不会在“生产”或“测试”中可用。

该包提供的 artisan 命令之一,允许您将 json 文件导入持久存储系统。下面将提供更多信息。

安装

将包添加到 composer.json 文件中

"require": {
  "patkruk/laravel-cached-settings": "dev-master"
}

使用 composer 安装包

$ composer update

使用 artisan 发布配置文件

$ php artisan config:publish patkruk/laravel-cached-settings

配置

注册包

在 app/config/app.php 文件的底部添加一个别名

'CachedSettings' => 'Patkruk\LaravelCachedSettings\Facades\CachedSettings',

并在 $providers 数组的底部注册此服务提供者

'Patkruk\LaravelCachedSettings\LaravelCachedSettingsServiceProvider',

运行迁移

$ php artisan migrate --package=patkruk/laravel-cached-settings

您可以在发布的包配置文件中指定表名。

用法

添加新的设置

CachedSettings::set('datetime_format', 'Y-m-d H-i-s');

您可以使用“点”表示法来模拟多维数组

CachedSettings::set('email.admin', 'admin@example.com');
CachedSettings::set('email.editor', 'editor@example.com');

检索设置

CachedSettings::get('datetime_format');
CachedSettings::get('email.editor');
CachedSettings::get('email.host', 'default_value');

检查设置是否存在

CachedSettings::has('email.admin');

它检查持久存储并返回一个布尔值。

更新设置

CachedSettings::set('email.admin', 'administrator@example.com');

删除设置

CachedSettings::delete('email.admin');

此命令从缓存和持久存储中删除设置!

删除所有设置

CachedSettings::deleteAll();

此命令从缓存和持久存储中删除所有设置!

刷新缓存中的设置

如果您直接在数据库中更改了值或只想确保您的缓存是最新的,您可以刷新单个设置。

CachedSettings::refresh('email.admin');

您的缓存中的值将更新为数据库中的值。

刷新缓存中的所有设置

您可以通过一条命令更新缓存,将其与数据库中的值同步。

CachedSettings::refreshAll();

获取所有键的列表

CachedSettings::getKeys();

此命令返回当前存储在数据库中的所有键的数组。

获取所有键和设置

CachedSettings::getKeysAndValues();

此命令返回所有设置的关联数组。

获取所有设置(表转储)

CachedSettings::getAll();

此命令返回整个表的转储。

Artisan 命令

该包提供了 5 个不同的 artisan 命令,方便您使用

设置参数

$ php artisan cached-settings:set email.admin admin@example.com

或者简单地运行下面的命令,并根据提示提供所需的信息

$ php artisan cached-settings:set

您始终可以使用“env”选项指定环境

$ php artisan cached-settings:set email.admin admin@example.com --env=production

返回参数

$ php artisan cached-settings:get email.admin

或者简单地

$ php artisan cached-settings:get

刷新缓存中的所有参数

$ php artisan cached-settings:refresh-all

删除所有参数(缓存和数据库)

$ php artisan cached-settings:delete-all

导入 JSON 文件

$ php artisan cached-settings:import-file /home/vagrant/import_data.json

此命令允许您导入一个仅包含字符串或数字字段的 JSON 对象文件。示例

{
    "email.admin": "admin@example.com",
    "email.editor": "editor@example.com",
    "email.send": "false",
    "security.min_password_length": 15
}

像往常一样,您可以使用“env”选项指定环境

$ php artisan cached-settings:import-file /home/vagrant/import_data.json --env=production

许可协议

Laravel 缓存设置是开源软件,遵循 MIT 许可协议