如何使用核心php函数在Symfony框架中的Twig文件

时间:2017-10-30 09:15:58

标签: symfony twig

我是Symfony的新手,我在网上搜索了很多如何使用核心PHP函数,如数组函数(in_array,array_combine),字符串函数(strpos,strlen),日期函数(日期,时间戳)等。在Symfony Twig文件中?

2 个答案:

答案 0 :(得分:2)

首先,在您的包中创建Twig/Extension目录。示例:AppBundle/Twig/Extension

然后,为您的函数名创建一个类。我创建了一个JsonDecode,我使用每个twig文件这个函数;

namespace AppBundle\Twig\Extension;

class JsonDecode extends \Twig_Extension
{
    public function getName()
    {
        return 'twig.json_decode';
    }
    public function getFilters()
    {
        return array(
            'json_decode'   => new \Twig_Filter_Method($this, 'jsonDecode')
        );
    }
    public function jsonDecode($string)
    {
    return json_decode($string);
    }
}

然后,

将行添加到services.yml;

twig.json_decode:
    class: AppBundle\Twig\Extension\JsonDecode
    tags:
        - { twig.extension }

够了。

答案 1 :(得分:1)

您必须创建可在树枝模板中使用的自定义树枝扩展名。

您可以关注symfony documentation