使用foreach作为变量访问第二个数组维度?

时间:2014-12-17 10:19:01

标签: php arrays

我有一个这样的数组:

Array
(
    [10060] => Array
        (
            [127] => Array
                (
                )

            [130] => Array
                (
                )
        )
    [10070] => Array
        (
            [127] => Array
                (
                )

            [130] => Array
                (
                )
        )
)

我想使用这样的foreach访问第二维的键:

foreach(array_keys($adamBrownsArray[100060][]) as $secondDimension)
{
  echo($secondDimension);
} 

当我只想列出所有键并将它们用作变量时,如何引用第二维?(注意我将第二个维度括号留空了)

预期的回音输出将是:

127
130

3 个答案:

答案 0 :(得分:2)

您只需要二级数组的键。

因此,遍历主阵列,您将获得第二级数组。

使用array_keys()

获取密钥
<?php
foreach ($arr as $elem) {
  echo '<pre>';
  print_r(array_keys($elem));
  echo '</pre>';
}
?>

答案 1 :(得分:0)

您的代码中有一个额外的[],这会阻止它正常工作。试试这个:

foreach(array_keys($adamBrownsArray[100060]) as $secondDimension)
{
    echo($secondDimension);
} 

查看PHP文档中的array functions列表。

答案 2 :(得分:0)

试试这个:

$keys = array_keys(call_user_func_array('array_merge', $your_array));

echo "<pre>";
print_r($keys);