在 Twig 中使用自定义函数
在我的模板中,我想输出服务器时区。
我的模板有类似的东西
{{ getservertimezone }}
然后在该捆绑包的配置中,我有services.yml
my.twig.extension:
class: My\WebsiteBundle\Extensions\Twig\SomeTemplateHelper
tags:
- { name: twig.extension }
而我的长相像SomeTemplateHelper
namespace My\WebsiteBundle\Extensions\Twig;
class SomeTemplateHelper extends \Twig_Extension
{
public function getFilters()
{
return array(
'getservertimezone' => new \Twig_Filter_Method($this, 'getServerTimeZone'),
);
}
public function getServerTimeZone()
{
if (date_default_timezone_get()) {
return date_default_timezone_get();
} else if (ini_get('date.timezone')) {
return ini_get('date.timezone');
} else {
return false;
}
}
public function getName()
{
return 'some_helper';
}
}
但是我不能调用此方法,除非它像过滤器一样使用:;有没有办法直接打电话?{{ someval | getservertimezone }}
{{ getservertimezone() }}