PHP4-解析ini

PHP4-解析ini,php,parsing,ini,Php,Parsing,Ini,我在一个嵌入了php并运行PHP4的旧NAS驱动器上执行此操作 支持parse_ini_文件,但我无法在返回的结果中创建值数组 以下工作: [first_section] one = 1 five = 5 animal = BIRD [second_section] path = "/usr/local/bin" URL = "http://www.example.com/~username" [third_section] phpversion[] = "5.0" phpversion[]

我在一个嵌入了php并运行PHP4的旧NAS驱动器上执行此操作

支持parse_ini_文件,但我无法在返回的结果中创建值数组

以下工作:

[first_section]
one = 1
five = 5
animal = BIRD

[second_section]
path = "/usr/local/bin"
URL = "http://www.example.com/~username"

[third_section]
phpversion[] = "5.0"
phpversion[] = "5.1"
phpversion[] = "5.2"
phpversion[] = "5.3"

// Parse with sections
$ini_array = parse_ini_file("sample.ini", true);
print_r($ini_array);
但第三部分只是返回:

[third_section] => Array
        (
            [phpversion[]] => 5.3
        )
并不是所有的价值观

我是做错了还是因为PHP4


有其他方法吗?

是的,这是由于PHP4。看


从PHP5开始的输出将给出手册中所示的第三部分,而之前的版本将显示您遇到的行为。

ini asume的常见实现是重复输入替换旧输入。你可以考虑使用一个特殊的解析器——尽管我更容易用一些符号来设置数组,例如:<代码> PHPVVIEW = [“5”、“5.1”、“5.2”、“5.3”] /代码>你将从解析器中得到这条线,然后你可以根据需要进一步处理它。谢谢你的回复。我发布的示例是一个php.net示例,所以我假设它是正确的。感谢您的确认。你知道有什么解决方案会产生相同的结果吗?@Rocket我不知道有任何userland库。如果不能将密钥更改为唯一的,则可能必须自己编写解析器。