在 Twig 中本地化日期间隔

Localize dateinterval in Twig

我有一个实体方法在这个实体的 DateTime 属性 和现在之间返回 PHP DateInterval,以了解在此日期时间之前还剩多少时间.

我想在 Twig 中显示这个间隔,所以我使用了类似的东西:

{{ myEntity.getTimeRemaining | date("%D days %H Hours %i Mins ") }}

一切正常。

现在,我该如何本地化这种格式? (并最终考虑复数) 我找到了 transchoice 方法,但它似乎只是本地化日期,而不是时间间隔。

您可以使用 KnpTimeBundle

我认为这个包可以简化您的实现,因此您可以直接转储现在之间的时差而无需通过 DateInterval,您可以简单地使用当前日期:

{# Returns something like "3 minutes ago" #}
{{ time_diff(myEntity.getMyTimeField) }}

这个与另一个日期比较:

{# Returns something like "3 minutes ago" #}
{{ time_diff(myEntity.getMyTimeField , to ) }}

默认情况下启用翻译,只需查看翻译文件或根据需要添加。

希望对您有所帮助