我正在阅读配置文件,我想在字符串中读取包含;
的名称,如
config=node1;node2;node3
我希望整体阅读而不是node1
,因为php在阅读中回复
我的代码:
$ini_array = parse_ini_file("test_config.conf", true);
$nodelist = $ini_array["config"];
答案 0 :(得分:1)
由于;
表示ini文件中的评论,parse_ini_file()
会正确地抛弃(未引用的);
背后的所有内容。
对我而言,您似乎在滥用ini
格式,因此如果您想获取该信息,则需要自行解析文件,如下所示:
$config = array();
foreach(file('/path/to/conf.ini') as $line) {
if(preg_match('/^([^;]*?)=(.*)/', $line, $m)) {
$config[$m[1]] = $m[2];
}
}
var_dump($config);
如果您只需要config
的值,则可以使用:
preg_match('/^\s*config\s*=(.*)/', file_get_contents('config.ini'), $m);
echo $config = $m[1];