可以使用Zend_Config_Ini在要解析的ini文件中指定数组

Ake*_*eem 32 zend-framework

有没有办法在ini文件中指定一维数组.

所以在我的ini我想做

someproperty = [某事物的数组]

我正在使用Zend_Config_Ini配置适配器(我更喜欢ini进行基本配置).

Ali*_*man 38

someproperty[] = a
someproperty[] = b
someproperty[] = c
someproperty[] = d
someproperty[] = e
Run Code Online (Sandbox Code Playgroud)

请参阅:http://us.php.net/manual/en/function.parse-ini-file.php#75983

  • 我今天遇到了一个问题,如果没有在ini文件的顶部定义[section],这种语法将无法正常工作.不确定这是不是一个bug,但绝对值得注意! (5认同)
  • 是否有可能为多维(因此某些属性值可能是哈希/多维数组)? (2认同)

mač*_*ček 7

虽然没有记录,但这似乎也很有效:

foo[bar] = 5
foo[baz] = 6
hello[world] = 7
Run Code Online (Sandbox Code Playgroud)


Ali*_*man 6

你可以使用分隔符来制作更多的子部分,它们被表示为另一个级别的对象($ config-> some-> a)或者使用$ config-> toArray(),它们可以转换为多级阵列.

结合上述两种技术来制作数组,以及像这样的分隔符:

some.a[] = a
some.a[] = b
some.b[] = c
Run Code Online (Sandbox Code Playgroud)

将给出您正在寻找的结果.

array('some' => array('a' => array(0 => 'a',
                                   1 => 'b'),
                      'b' => array(0 => 'c')
                     ));
Run Code Online (Sandbox Code Playgroud)

  • 点缀的语法不适用于PHP的"parse-ini-file"函数的构建.square-bracket-syntax只适用于一维数组. (2认同)