在不循环多维数组PHP的情况下获取第一个子数组键[重复]

Posted

技术标签:

【中文标题】在不循环多维数组PHP的情况下获取第一个子数组键[重复]【英文标题】:get the first sub array key with out looping a multidimensional array PHP [duplicate] 【发布时间】: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)

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

【问题讨论】:

【参考方案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", ">=");

以上是关于在不循环多维数组PHP的情况下获取第一个子数组键[重复]的主要内容,如果未能解决你的问题,请参考以下文章

使用php从多维数组中获取子数组

如何在不循环的情况下展平一个简单的数组?

如何在 PHP 中循环遍历多维数组并按名称递归删除键?

如何在不使用 for 循环的情况下从 appsettings 文件中读取对象数组中特定键的值

PHP多维数组搜索并获取键的数组[重复]

在循环内将数组添加到多维数组