我不知道这是否被称为"硬编码",但我想构建一个数组(例如从mysqli_fetch_assoc查询),并将其输出到config.php文件中以供重用。
因此,mysql的输出将是:
[structure] => Array
(
[0] => Array
(
[structureid] => 23
[active] => 1
)
[1] => Array
(
[structureid] => 25
[active] => 1
)
它会像这样存储在config.php文件中:
$structure[0]['structureid'] = 23;
$structure[0]['active'] = 1;
$structure[1]['structureid'] = 25;
$structure[1]['active'] = 1;
有没有一种简单快捷的方法可以做到这一点?
正如有人指出的那样,我可以使用json文件来解决这个问题——我已经在做了——但我想检查是否有其他(快速)方法可以做到这一点,如上所述。
您可以使用var_export()创建一个可读的(代码中可重复使用的)数组,然后将其放入配置文件:
$reusableCode = var_export($yourArray, true);
或者只是输出:
var_export($yourArray);
您可以将其放在带有返回的配置文件中,如下所示:
return array(
'your' => 'values'
);
然后从你的代码中要求它:
$configData = require('yourConfigFileWithTheArray.php');
我最初误解了你的问题,
所以您想将mysql
资源存储到一个文件中?
你提到你正在使用JSON
来解决这个问题。
这是一个很好的方法,另一种方法是序列化/反序列化对象,而不是将它们保存到文件中。JSON
解决方案是简单的人类可读的。
示例:
$data = serialize($rows);
file_put_contents('data.txt', $data);
$data = file_get_contents('data.txt');
$rows = unserialize($data);
但是您将无法读取序列化的输出。