How to call the 'time_diff' filter in Twig

2019-04-28 08:40发布

How can I call the 'time_diff' function In Twig

The code

{{ post.created_at|time_diff }}

Output

The filter "time_diff" does not exist

4条回答
女痞
2楼-- · 2019-04-28 09:19

I suggest You to use the KnpTimeBundle

So you can simply compare with the current date:

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

This compare with the another date:

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

The translation is enabled by default, simply review the translations files or add as you need.

Hope this help

查看更多
在下西门庆
3楼-- · 2019-04-28 09:26

If you're using Symfony 2,

And want to use some of the native twig extension

You have to declare as service something like :

services:
    twig.extension.date:
       class: Twig_Extensions_Extension_Date
       tags:
            - { name: twig.extension }
查看更多
贼婆χ
4楼-- · 2019-04-28 09:34

At first you need:

composer require twig/extensions

Then you need to register Date extension:

$twig->addExtension(new Twig_Extensions_Extension_Date());

After that you could use time_diff filter. All in docs

查看更多
家丑人穷心不美
5楼-- · 2019-04-28 09:36

Did you add the date extension?

Add the following line before using this formatting:

$twig->addExtension(new Twig_Extensions_Extension_Date());
查看更多
登录 后发表回答