【问题标题】:How to find parent array key in multidimensional array php如何在多维数组php中找到父数组键
【发布时间】:2016-04-04 16:35:17
【问题描述】:

我尝试调整我在堆栈中找到的许多类似解决方案,但没有一个对我有用。有人可以帮我吗?

这个多维数组是动态生成的(总共包含 55 个键)。 用户输入的变量 $age 和 $age 对应于第二个数组键,在这个例子中 [15]。通过这个键$age我必须找出父键val $key

为了回显最终值,我需要顶级数组键 ($key)。这是 echo 的样子:

$val = $array[$key][$age]["stadij1"]["20-40"];

echo $val;

如何定位键 [15] 的顶级父数组键([0])?

Array
(
[0] => Array
    (
        [15] => Array
            (
                [stadij1] => Array
                    (
                        [0-20] => 0
                        [20-40] => 61
                        [40-80] => 38
                        [80-120] => 30
                        [120-xx] => 27
                    )

                [stadij2] => Array
                    (
                        [0-20] => 0
                        [20-40] => 50
                        [40-80] => 32
                        [80-120] => 27
                        [120-xx] => 24
                    )...
    )...
  //my try
  $key = array_search($age,$array); //problem is that it returns only first element
  $val = $array[$key][$age]["stadij1"]["20-40"];
  echo $val;

【问题讨论】:

    标签: php arrays multidimensional-array array-key


    【解决方案1】:

    如果我理解正确,您的意思是:

    function findKey($array, $age) 
    {
        foreach ($array as $parentIndex => $parentValue) {
            foreach ($row as $index => $value) {
                if ($index === $age) {
                    return $parentIndex;
                }
            }
        }
        throw new Exception('key not found');
    }       
    

    【讨论】:

    • 多维数组并不意味着它只有两个级别,即使原始示例是这样显示的。
    猜你喜欢
    • 1970-01-01
    • 2014-05-11
    • 2021-07-02
    • 1970-01-01
    • 1970-01-01
    • 2011-09-20
    • 2013-02-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多