如何制作/修补php源代码(c代码)从php.ini读取数组?

时间:2011-01-27 22:13:12

标签: php php-extension php-internals

我对php有经验,但我是php源码和php扩展的新手。我想扩展php,以便它从一个数组中随机选择一个upload_tmp_dir,而不是一个固定的目录。

它看起来不像php,ini文件读取代码有能力解析ini文件中的数组。

是否有任何现有的代码或扩展(在树中或在其外部)允许将ini定义的数组映射到php中的全局数组val?

否则我想我会引入像“num_upload_dirs”,然后是“upload_tmp_dir_1”和“upload_tmp_dir_2”等内容,然后明确检查所有的val。

或者将自己的行解析和全局数组创建例程写入ini文件阅读器。两者都没有吸引力。还有其他建议吗?

2 个答案:

答案 0 :(得分:0)

ini文件格式不支持数组。

最好通过uplaod_tmp_dir_1等服务。使用数组语法没有任何好处。

如果你考虑它实际上是更少的字节。 ;)

答案 1 :(得分:0)

PHP默认支持ini文件中的数组。没有必要修补任何东西

ini

key[] = value1
key[] = value2

用这个php

var_dump(parse_ini_file('my.ini'));

返回

array(1) {
  ["key"]=>
  array(2) {
    [0]=>
    string(6) "value1"
    [1]=>
    string(6) "value2"
  }
}