使用PHP解析*.ini-file时丢失布尔值



只是试图使我自己的配置处理程序在PHP,利用本地PHP parse_ini_file -函数。我只是注意到,我所有的配置项的值是布尔值- true/false是混乱的,随着大多数其他配置项被类型转换为字符串。

显然,这是一个众所周知的问题:http://www.php.net/manual/en/function.parse-ini-file.php#100851

那么什么是合适的解决方案呢?
使用非php配置非常简洁,这使得非开发人员在必要时更改值变得非常容易,因此我希望保留基于*.ini的配置。

A little迟了,但从PHP 5.6开始,你可以传递第三个参数INI_SCANNER_TYPED,它将保持值

的类型
parse_ini_file('config.ini', true, INI_SCANNER_TYPED)

我想这个问题最简单的解决方案就是使用你自己的配置处理程序。要么编写一个ini类,要么下载一个免费的(ini格式非常简单)。

但是如果你想要互操作性,我建议将你的配置存储在xml中。每种现代编程语言都有大量可用的或内置的XML解析器。您还可以在设置结构中获得更大的灵活性。你可以很容易地设置格式类型安全

最新更新