Skip to content

配置服务

配置服务(SettingService)用于存取系统的配置项。

注册

php
$biz->regisger(\Codeages\Biz\Framework\Provider\SettingServiceProvider());

注册后需要执行 Migration 创建数据库表:

bash
vendor/bin/phpmig migrate

使用

获得服务

php
$settingService = $biz->service('Setting:SettingService');

存储配置项

存储数组:

php
$settingService->set('this_is_arrary', array(
    'key1' => 'value 1',
    'key2' => 'value 2',
));

存储标量:

php
$settingService->set('this_is_string', 'string value');
$settingService->set('this_is_bool', true);
$settingService->set('this_is_integer', 1);

Dot 语法:

设置已存在的配置项 this_is_arrary 的键为 key1 的值:

php
$settingService->set('this_is_arrary.key1' => 'new value 1');

设置新的配置项 new_key 的键为 subkey 的值:

php
$settingService->set('new_key.subkey' => 'new value');
// 上述语句等同于下述语句
$settingService->set('new_key', array(
    'subkey' => 'new value',
));

提示

如果存储的配置项已存在且为标量、非数组时,不能使用 Dot 语法。

获取配置项

php
$value = $settingService->get('this_is_arrary');
$value = $settingService->get('this_is_string');
$value = $settingService->get('this_is_bool');

当配置项不存在时,调用 get 方法,默认返回 null,也可指定默认值:

php
$value = $settingService->get('new_key', 'default value');

Dot 语法:

php
$value = $settingService->get('this_is_arrary.key1');