Php多维数组获取值

时间:2013-10-10 14:51:07

标签: php arrays multidimensional-array

我有以下代码示例

private $analyze_types = array(
    "1" => array(
        'level' => '4',
        'l1' => '-1',
        'l2' => '-1',
        'l3' => '-1',
        'l4' => '-1',
        'l5' => '-1'
    ),
    "226" => array(
        'level' => '-1',
        'l1' => '-1',
        'l2' => '-1',
        'l3' => '2',
        'l4' => '3',
        'l5' => '4'
    )
);

如何获得“1”的值,如果我想获得“等级”值,我该怎么办?

4 个答案:

答案 0 :(得分:5)

PHP:

foreach( $this->analyze_types as $key => $value) {
  echo $key; // output 1 and 226
  echo $value['level']; // output 4 and -1
}

答案 1 :(得分:3)

要获取主数组中索引为'level'的子数组的索引为'1'的元素,您应该只使用

$this->analyze_types[1]['level']

答案 2 :(得分:2)

您可以尝试使用array_column(http://php.net/manual/en/function.array-column.php

例如:

$levels = array_column($this->analyze_types, 'level');

答案 3 :(得分:1)

你可以通过以下方式获取数组的键,如果那就是你要问的那个?

$keys = array_keys($this->analyze_types);
print_r($keys);

现在你有一个键数组,你可以简单地遍历它们来执行更多的代码,例如:

foreach($keys as $k) {
    echo $k; //This will echo out 1
}