在我的树枝视图中,我想显示一个日期:
{{ match.date|date("l d F - H:i") }}
Run Code Online (Sandbox Code Playgroud)
此日期以英语显示:
Wednesday 15 June - 15:30
我想用法语显示它...
我setlocale(LC_TIME, "fr_FR");之前尝试添加调用视图,但日期仍以英文显示...
小智 6
您可以使用哈希(键值数组)并将其与您正在操作的日期对象进行匹配。
例如,要在单词中获取今天的星期几:
{% set trans_day_hash = {
"Monday": "Lundi",
"Tuesday": "Mardi",
"Wednesday": "Mercredi",
"Thursday": "Jeudi",
"Friday": "Vendredi",
"Saturday": "Samedi",
"Sunday": "Dimanche"
}
%}
{{ trans_day_hash["now"|date('l')] }}
Run Code Online (Sandbox Code Playgroud)
我使用format_datetime树枝过滤器和locale参数pattern如下:
{{ service.date|format_datetime(locale='fr',pattern="EEEE dd MMMM YYYY") }}
Run Code Online (Sandbox Code Playgroud)
其输出例如:
vendredi 27 novembre 2020
lundi 02 novembre 2020
vendredi 30 octobre 2020
Run Code Online (Sandbox Code Playgroud)
请参阅此资源以了解日期模式。
小智 4
Twig 中的过滤date器不太适合本地化日期格式,因为它基于 PHP 的DateTime::format. 一种选择是使用Intl Extensionlocalizeddate提供的过滤器。
默认 Symfony 安装中不提供此扩展。您可以在官方 Twig 扩展存储库中找到它:
composer require twig/extensions
Run Code Online (Sandbox Code Playgroud)
然后,只需将此扩展声明为服务services.yml即可:
services:
twig.extension.intl:
class: Twig_Extensions_Extension_Intl
tags:
- { name: twig.extension }
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6637 次 |
| 最近记录: |