类 JsonConfig
JSON 引擎允许 Configure 从包含 JSON 字符串的文件中加载配置值。
一个示例 JSON 文件如下所示:
{
"debug": false,
"App": {
"namespace": "MyApp"
},
"Security": {
"salt": "its-secret"
}
}
属性摘要
-
$_extension protected
string
文件扩展名。
-
$_path protected
string
此引擎查找文件的路径。
方法摘要
-
__construct() public
JSON 配置文件读取的构造函数。
-
_getFilePath() protected
获取文件路径
-
dump() public
将提供的 $data 转换为 JSON 字符串,该字符串可用于保存到文件中并稍后加载。
-
read() public
读取配置文件并返回其内容。
方法详情
__construct() ¶ public
__construct(string|null $path = null)
JSON 配置文件读取的构造函数。
参数
-
string|null
$path optional 要从中读取配置文件的路径。默认为 CONFIG。
_getFilePath() ¶ protected
_getFilePath(string $key, bool $checkExists = false): string
获取文件路径
参数
-
string
$key 要写入的标识符。如果键包含 .,它将被视为插件前缀。
-
bool
$checkExists optional 是否检查文件是否存在。默认为 false。
返回
string
抛出
Cake\Core\Exception\CakeException
当文件不存在或文件包含 '..' 时,因为这可能导致恶意读取。
dump() ¶ public
dump(string $key, array $data): bool
将提供的 $data 转换为 JSON 字符串,该字符串可用于保存到文件中并稍后加载。
参数
-
string
$key 要写入的标识符。如果键包含 .,它将被视为插件前缀。
-
array
$data 要转储的数据。
返回
bool
read() ¶ public
read(string $key): array
读取配置文件并返回其内容。
名称中带有 .
的文件将被视为插件中的值。插件键不会从初始化的路径中读取,而是使用 Plugin::path() 定位。
参数
-
string
$key 要从中读取的标识符。如果键包含 .,它将被视为插件前缀。
返回
array
抛出
Cake\Core\Exception\CakeException
当文件不存在或文件包含 '..'(因为这可能导致恶意读取)或解析 JSON 字符串时出现错误。