Yan.G WebServer Dev Engineer

Twig 模板引擎

2018-05-23

Twig 模板引擎添加扩展

  • twig模板引擎中无法使用自定义的php函数,为方便调用自定义函数,需要把一些常用函数加载为扩展,记录如下

编写扩展类,继承\Twig_Extension

class DumpExtension extends \Twig_Extension
{
    // 固定格式
    public function getFilters()
    {
        return array(
            // 这里定义自定义函数名
            new \Twig_SimpleFilter('dump', array($this, 'dump')),
        );
    }

    // 自定义函数
    public function dump($param)
    {
		var_dump($param)
        return $param;
    }
   // 固定格式
    public function getName()
    {
        return 'dump_extension';
    }
}

自身业务加载twig方式,不同框架各异

$templateDir = "/var/www/web/dir/xxx";
$loader = new Twig_Loader_Filesystem( $templateDir );
$twig   = new Twig_Environment($loader, $options);

加载扩展

$twig->addExtension(new DumpExtension);

模板中使用

helloworld

上一篇 php 源码安装

Content