我有一个config.ini文件,它有许多这类变量:
site.social.twitter = "URL"
site.social.facebook = "URL"
site.social.google-plus = "URL"我使用PHP的内置函数来解析INI。
$config = parse_ini_file(__DIR__ ."/../config.ini");下一步是将这个(site.social.twitter)变成一个数组。
$config['site']['social']['twitter']你可以只是“爆炸()”,但它不能完全到达那里。有什么更简单的解决办法吗?
发布于 2016-03-10 21:24:26
好的,您可以查看对INI文件使用节和数组语法,如:
[site]
social[twitter] = URL
social[facebook] = URL
social[google-plus] = URL然后传递true作为第二个参数:
$config = parse_ini_file(__DIR__ ."/../config.ini", true);或者使用现有的INI结构(改编自如何通过键名/路径访问和操作多维数组?)进行构建:
$array = array();
foreach($config as $path => $value) {
$temp = &$array;
foreach(explode('.', $path) as $key) {
$temp =& $temp[$key];
}
$temp = $value;
}
$config = $array;
print_r($config);发布于 2016-03-10 20:48:45
简单地引用$config['site']['social']是否为您提供了所需的数组?根据文档,这将产生:
Array
(
[twitter] => "URL"
[facebook] => "URL"
[google-plus] => "URL"
)https://stackoverflow.com/questions/35926888
复制相似问题