使用 parse_ini_file('/etc/mysql/my.cnf')
时,返回以下错误消息:
Warning: syntax error, unexpected '!' in /etc/mysql/my.cnf on line 141
发生这种情况是因为配置文件的最后一行,即:
!includedir /etc/mysql/conf.d/
是否可以使用 parse_ini_file()
来解析 MySQL 配置文件并绕过与感叹号相关的错误,或者我应该查看 preg_match() ?谢谢。
不幸的是,parse_ini_file不会这样做。
您应该转义无效字符,例如
^!{}~
在parse_ini_string解析之前您可以在以下链接上查阅手册:http://php.net/manual/en/function.parse-ini-string.php
以下代码将完成这个技巧
$myfile = file_get_contents("my.cnf");
$invalid = array("!","{","}","~","^");
$myfile = str_replace($invalid, "", $myfile);
$cfg = parse_ini_string($myfile,TRUE);
var_dump($cfg);