我有一个多维数组,沿着
array(2) {
[11]=> array(1) {
["L2J"]=> array(1) {
["VS7"]=> array(2) {
["26 Feb 2015 12:00"]=> array(2) {
["C"]=> string(1) "9"
["D"]=> string(1) "9"
}
["26 Feb 2015 13:00"]=> array(2) {
["C"]=> string(1) "9"
["D"]=> string(1) "6"
}
}
}
}
}现在,我已经做了一些循环,我现在到了点,我可以访问日期。
{% for sid, psuedos in alerts %}
{% for psuedo, flights in psuedos %}
{% for flight, dates in flights %}
{% endfor %}
{% endfor %}
{% endfor %}现在,我正在转换一些正常的PHP代码,在这一点上,我将
$firstDate = array_pop(array_keys($dates));有办法在Twig做这样的事吗?我到处找过,但似乎什么也找不到。
更新
这是我最近的努力,但似乎无法将最后一个数组元素切片
{% set firstDate = [dates|keys]|last|slice(1) %}发布于 2017-01-06 22:59:06
没有一个Twig函数能够完成array_pop()所做的工作(返回最后一个数组元素和,同时缩短数组),但是有一些方法可以分别完成它们。
给予:
{% set array = [1,2,3,4,5] %}要获得最后一个元素,请使用Twig的 filter。
{{ array|last }}
{# returns '5' #}只能使用 filter删除最后一个元素,如下所示:slice(0,-1)
{% set array = array|slice(0,-1) %}
{# array = [1,2,3,4] #}..。或者是手工艺 filter
{% set arrayLast = array|last %}
{% set array = array|without(arrayLast) %}
{# array = [1,2,3,4] #}发布于 2016-04-03 18:58:24
pop最后元素
{% set array = [1,2,3] %}
{% set value = array|last %}
{{ value }} {# return 3 #}
{% set array = array|slice(start, length - 1) %}
{% for value in array %}
{{ value }} {# return 1,2 #}
{% endfor %}弹出第一个元素
{% set array = [1,2,3] %}
{% set value = array|first %}
{{ value }} {# return 1 #}
{% set array = array|slice(start + 1, length) %}
{% for value in array %}
{{ value }} {# return 2,3 #}
{% endfor %}发布于 2015-08-24 15:00:26
作为快速检查,你有没有试过slice(-1)
传递一个负数作为第一个参数应该从数组的末尾开始,并运行许多返回的值。
https://stackoverflow.com/questions/28767095
复制相似问题