7*4 2009-12-17 12:26 采纳率: 50%
浏览 2424
已采纳

如何获取数组的第一个元素?

我有一个数组:

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

我想得到这个数组的第一个元素。结果预计是: string apple

一个问题是:它不能通过引用传递,所以数组移位不是一个好的解决方案。

可以怎么做?

  • 写回答

30条回答 默认 最新

  • python小菜 2010-09-22 16:04
    关注

    Original answer, but costly (O(n)):

    array_shift(array_values($array));
    

    In O(1):

    array_pop(array_reverse($array));
    

    Edited with suggestions from comments for other use cases etc...

    If modifying (in the sense of resetting array pointers) of $array is not a problem, you might use:

    reset($array);
    

    This should be theoretically more efficient, if a array "copy" is needed:

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

    With PHP 5.4+ (but might cause an index error if empty):

    array_values($array)[0];
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(29条)

报告相同问题?

悬赏问题

  • ¥15 关于#hadoop#的问题
  • ¥15 (标签-Python|关键词-socket)
  • ¥15 keil里为什么main.c定义的函数在it.c调用不了
  • ¥50 切换TabTip键盘的输入法
  • ¥15 可否在不同线程中调用封装数据库操作的类
  • ¥15 微带串馈天线阵列每个阵元宽度计算
  • ¥15 keil的map文件中Image component sizes各项意思
  • ¥20 求个正点原子stm32f407开发版的贪吃蛇游戏
  • ¥15 划分vlan后,链路不通了?
  • ¥20 求各位懂行的人,注册表能不能看到usb使用得具体信息,干了什么,传输了什么数据