在php中常见的是将配置数据存储在数组中,这是只读的。有人做了实用工具,可以直接在源代码中保存对数组的更改吗?我并不是指将数组序列化到某个文件,而是更新源文件中的值。
答案 0 :(得分:1)
这就是我操纵和保存配置数组状态的方法。
这里我创建了一个配置数组(但是假设你已经有一个相同的格式),我写了它。接下来我读了它,进行编辑并保存回文件。
根据自己的喜好调整。
<?php
function write_config($config, $path) {
file_put_contents($path, '<?php return ' . var_export($config, true). ';');
}
function read_config($path)
{
return include $path;
}
$config_path = '/tmp/config.php';
$config = array(
'foo' => 'bar'
);
write_config($config, $config_path);
$config = read_config($config_path);
var_dump($config);
$config['foo'] = 'baz';
write_config($config, $config_path);
$config = read_config($config_path);
var_dump($config);
输出:
array (size=1)
'foo' => string 'bar' (length=3)
array (size=1)
'foo' => string 'baz' (length=3)
我通常有一个带有默认值的基本数组,并且有另一个用于调整的数组,我用它来覆盖第一个数组。我使用array_merge_recursive将后者应用于第一个。