PHP Parse ini文件

时间:2015-09-21 06:12:05

标签: php arrays ini

我编写了一个程序来浏览日志文件并将信息传递到ini文件中,我正在尝试用它做一些php工作,我有0次使用php的经验。

我有一个包含类似信息的INI文件,

[76561197962467705]
Username = ".buckisM"
Suicide = 0
bear.prefab = 0
killed by fall = 0
patrolhelicopter.prefab = 0
wolf.prefab = 0
Cold = 0
Explosion = 0
barricade = 0
Player Deaths = 0
Total Deaths = 0
Kills = 2

我使用php ini解析器,可以将ini打印到网页。

    $ini_array = parse_ini_file("myfile.ini", true);
    print_r($ini_array);

印刷阵列。 http://liveviewtest.byethost7.com/index.php

根据我的阅读,如果设置了true标志,parse_ini_file会将信息解析为多维数组。为什么我不能使用括号访问数组元素?

echo $ini_array[0][0];

2 个答案:

答案 0 :(得分:1)

因为你得到的实际上是一个字典,这是一个非有序的数组。您无法通过数字索引来处理该结构的每个元素,因为它使用ini文件中定义的键进行索引。你可以像

那样解决它
$ini_array['76561197988912576']['username']

您可以使用foreach循环进行循环

foreach($ini_array as $key=>$value) {
  echo ($value['username']);
}

或者您可以将字典转换为带有“array_keys”的索引数组

$ini_array = array_keys($ini_array);
echo $ini_array[0]['username'];

答案 1 :(得分:0)

因为在这种情况下你有hash字符串键。例如,如果您想从此数组中获取第一个Username,则可以尝试以下代码:

var_dump($ini_array['76561197988912576']['Username']);

我希望它有所帮助。