跳到主要内容

系统设置

XinAdmin 提供的强大且方便的系统设置,帮助开发者实现对业务中可变参数的配置。比如: 在对网站邮箱的配置中,传统操作是将邮箱的配置写入到 .env 文件中, 这样虽然可以实现我们的需求,但是在我们需要修改这些配置的时候,往往需要修改代码文件,如果你使用的是swoole 可能还需要每次重启服务。 面对这样的问题,我们通过mysql + redis 的方式,为开发者提供高可用的系统配置,不仅可以通过后台来管理配置参数,而且通过 redis 缓存提供高性能的配置读取。

目前已经支持输入框、文本域、数字输入框、单选框、多选框、开关等,后续会陆续添加对其它表单组件的支持。

添加设置

在管理后台中,点击 系统管理 -> 系统设置,即可看到系统设置页面。

设置分组

通过添加设置分组,可以将不同的设置进行分类。

设置分组

其中设置分组的 key 作为获取设置的前缀,在设置组中必须唯一存在。

设置项

通过添加设置项,可以配置不同的设置项。

设置项

设置项描述

字段说明必填
设置标题设置的标题,用于在页面上显示
设置 Key设置的唯一标识,用于在代码中获取设置值,在当前设置组中必须唯一
设置分组设置的分组
设置类型设置类型,用于选择设置项的输入类型,
设置选项当设置类型为单选框、多选、选择器的时候需要填入设置选项,label=key 格式,以换行分割
表单项配置表单项的配置,支持 Ant Design 所有非表达式的值,无需引号,比如:placeholder=Error 或 visibilityToggle=false, 以换行分割
默认值默认的值
设置提示设置下方的提示信息
排序设置的排序,数字越大越靠前

设置用法

设置用法

在添加完成设置后,选择你所添加的分组,你就可以看到该设置项,在代码中可以通过 setting 助手函数来获取设置的值。


$logo = setting('web.logo');

echo $logo;

// 输出: https://file.xinadmin.cn/file/favicons.ico

当然,你也可以通过传入设置的分组key获取该组的所有配置:

$web = setting('web');

echo $web['logo'];

// 输出: https://file.xinadmin.cn/file/favicons.ico

此时 $web 为包含 web 分组所有设置的数组。