doupao6698 2018-07-02 15:56
浏览 65
已采纳

ELI5:这段代码令人困惑

$lastEl = array_values(array_slice($array, -1))[0];

So I understand array_values and array_slice but I'm not sure what the indicator on the end is doing to it.

Can somebody help?

  • 写回答

1条回答 默认 最新

  • douquanhui5735 2018-07-02 16:08
    关注

    If you break it down...

    $lastEl = array_values(array_slice($array, -1))[0];
    

    Firstly...

    array_slice($array, -1)
    

    This is taking part of the array the -1 means from the end of the array, so this takes the last element and returns an array.

    array_values(array_slice($array, -1))
    

    This returns the values from the returned array - again as an array.

    [0]
    

    Takes the first element of the resultant array, as so far the result has been an array of 1 element (the last one) it converts the result from an array to the value of the last element of the array.

    So an example...

    $array = [1,2,3,4,5];
    $lastEl = array_values(array_slice($array, -1))[0];
    var_dump($lastEl);
    

    will output

    /home/nigel/workspace2/Test/t2.php:8:
    int(5)
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 组策略中的计算机配置策略无法下发
  • ¥15 机器学习简单问题解决
  • ¥15 如何绘制动力学系统的相图
  • ¥15 对接wps接口实现获取元数据
  • ¥20 给自己本科IT专业毕业的妹m找个实习工作
  • ¥15 用友U8:向一个无法连接的网络尝试了一个套接字操作,如何解决?
  • ¥30 我的代码按理说完成了模型的搭建、训练、验证测试等工作(标签-网络|关键词-变化检测)
  • ¥50 mac mini外接显示器 画质字体模糊
  • ¥15 TLS1.2协议通信解密
  • ¥40 图书信息管理系统程序编写