Symfony 对于循环,如何显示最后一个元素?
这是我的密码Symfony 对于循环,如何显示最后一个元素?,symfony,twig,Symfony,Twig,这是我的密码 <th>Attachment</th> <td> <ul> {% for attachment in lineup.attachments %} <li><a href='http://files.example.com/{{ attachment.f
<th>Attachment</th>
<td>
<ul>
{% for attachment in lineup.attachments %}
<li><a href='http://files.example.com/{{ attachment.file_url }}'>{{ attachment.name }}</a>
{% endfor %}
</ul>
</td>
附件
{lineup.attachments%中的附件为%s}
-
{%endfor%}
这是张贴每一个附件,这是伟大的,但我只希望它张贴最后一个附件,它发现,同时通过附件表迭代。例如,如果它找到10个附件,我不想要所有附件,只想要第10个。是否仍要执行此操作?从1.12.2版开始,Twig包含一个“最后”过滤器 语法如下所示:
{{ array|last }}
在您的情况下,它将是:
{{ lineup.attachments|last }}
您可以像这样使用它:
{% set attachement = lineup.attachments|last %}
<li>
<a href='http://files.example.com/{{ attachment.file_url }}'>
{{ attachment.name }}
</a>
</li>
{%set attachement=lineup.attachments | last%}
您可以在此处阅读所有相关内容:要添加到已接受的答案中,无需将其设置为变量。这也有效:
<a href='http://files.example.com/{{ lineup.attachments|last.file_url }}'>
{{ lineup.attachments|last.name }}
</a>
这是我尝试使用的一个,但在您建议的{%for%}语句中使用它时,没有显示任何内容。当我在{attachment.name | last}中使用它时,它只显示最后一个字母,但仍然发布所有4个项目@Robin Hermans在for循环中不使用它。你应该像使用物体一样使用它。请看我上次的编辑。没问题。你的项目成功了。