【问题标题】:get the first sub array key with out looping a multidimensional array PHP [duplicate]在不循环多维数组PHP的情况下获取第一个子数组键[重复]
【发布时间】:2013-01-06 13:41:36
【问题描述】:

嗨,我有一个多维 l 数组。

Array
(
    [1] => Array
        (
            [38] => Fashion Retail | Fashion Accessories
        )

    [10] => Array
        (
            [194] => Automotive | 4x4
            [206] => Automotive | Aftermarket Parts and Kits
            [201] => Automotive | ATVs
        )

)

我想获取第一个子数组的键,在这种情况下它是 1 ,我可以使用 foreach 循环来获取它。

foreach($myarry as $key=>$val)

有什么方法可以在没有循环的情况下实现这一点,请帮助。提前致谢

【问题讨论】:

    标签: php codeigniter multidimensional-array


    【解决方案1】:

    请尝试:

    reset($myarry);
    $first_key = key($myarry);
    

    【讨论】:

      【解决方案2】:

      是的,我做到了,我用过

      current(array_keys($my_array))
      

      【讨论】:

      • 不会给你第二个,第三个键等等...
      • 是的,我知道,但就我而言,它会起作用,感谢您的评论
      【解决方案3】:
      $arrKeys = array_keys($array);
      $key = array_shift($arrKeys); // gives first key
      

      返回第一个键并将其从arrKeys 中删除,因此下一个键,在这种情况下为 10 将在下次调用时返回。不需要再做一个数组。

      【讨论】:

        【解决方案4】:
        print_r($myarry[array_keys($myarry)[0]]);
        

        【讨论】:

        • 获取第一个值,而不是键。
        【解决方案5】:

        如果使用 >= PHP 5.5...

        $first = array_keys($myarry)[0];
        

        如果使用较旧的 PHP,只需在某处分配键,然后正常下标第一个元素。

        【讨论】:

        • @KanishkaPanamaldeniya version_compare("5.3.5", "5.5", ">=");
        猜你喜欢
        • 2011-12-21
        • 2012-05-03
        • 1970-01-01
        • 1970-01-01
        • 2019-12-01
        • 2014-03-23
        • 2015-05-14
        • 2018-03-24
        • 2019-04-29
        相关资源
        最近更新 更多