Config 类
在beaconPHP 中,配置文件存放在 /config 目录中 以php文件格式返回数组形式书写。
对文件命名有如下约定。
1 配置文件名格式必须是全部小写。
2 配置文件格式如 xxx.config.php 需要以 .config.php 结尾
如数据库配置文件
db.config.php
<?php
#数据库配置文件,目前只支持mysql
return array(
'db_host' => '127.0.0.1',
'db_port' => 3306,
'db_name' => 'oooo',
'db_user' => 'root',
'db_pwd' => '123456',
'db_prefix' => 'sl_',
'db_charset' => 'utf8mb4',
);
直接返回数组形式。
选择使用php文件并返回数组形式,是因为在 opcache 开启后,可以对文件进行缓存,减少IO配置文件读写次数。
配置文件类 Config 是一个静态类
静态方法名称
load($name, $overwrite = false): array
加载配置项,如
Config::load('db')
一般情况下我们不需要主动去提前加载配置项,系统会在我们用到的时候自动加载。
loadFile(string $file): array
读取一个配置文件,并已数组形式输出. 文件可以是以返回数组形式的任何php文件。
set(string $key, $value)
在原有的配置项中设置或者修改某一项的值。
#带有section 的设置
Config::set('web.webname','叶子的博客')
或者全局的设置
Config::set('webname','叶子的博客')
append(array $value)
在原有的配置项中设置添加多个设置项。
get(string $key = null, $default = null)
获取某一项配置的值。
$key 的格式如下:
$host=Config::get('db.db_host','127.0.0.1');
或者直接获取整个配置项 db.config.php 文件的所有值
$cfg=Config::get('db.*');
getSection(string $name)
获取整个节点或者文件的配置新
如 db.config.php 的配置信息,
Config::getSection('db');
setSection(string $name, array $data)
设置一个节点(段落的配置信息)
类似没有db.config.php 的文件 也可以 设置一个
Config::setSection(
[
'db_host' => '127.0.0.1',
'db_port' => 3306,
'db_name' => 'oooo',
'db_user' => 'root',
'db_pwd' => '123456',
'db_prefix' => 'sl_',
'db_charset' => 'utf8mb4',
]
);
并使用 Config::get('db.db_host') 或者 Config::get('db.*') 来读取。