开发者社区> 问答> 正文

获取数组的第一个元素

我有一个数组:

array( 4 => 'apple', 7 => 'orange', 13 => 'plum' )

我想获得此数组的第一个元素。预期结果:字符串 apple

一个要求:它不能通过引用传递来完成,所以array_shift不是一个好的解决方案。

我怎样才能做到这一点?

展开
收起
保持可爱mmm 2020-01-13 16:18:51 370 0
1 条回答
写回答
取消 提交回答
  • 原始答案,但代价昂贵(O(n)):

    array_shift(array_values($array));

    在O(1)中:

    array_pop(array_reverse($array));

    其他用例等

    如果修改(就重置数组指针而言)$array不是问题,则可以使用:

    reset($array);

    如果需要数组“副本”,则从理论上讲应该更有效:

    array_shift(array_slice($array, 0, 1));

    使用PHP 5.4+(但如果为空,则可能导致索引错误):

    array_values($array)[0];

    问题来源于stack overflow

    2020-01-13 16:19:08
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载