如何使用trick创建视图辅助对象


how to create viewhelpers with twig

我在没有symfony的情况下独立使用Twig。我做了很多模板,都很好用。我一直在尝试构建一个视图助手,就像在Fluid中一样。我想创建一个viewhelper,它基本上只是用一些html标签或我喜欢的东西来包装文本,但无论我想做什么,trick似乎总是对htmlspecialchar()感兴趣。我最近尝试过的:

    // ...
    $twig->addFunction(new Twig_SimpleFunction('test2',function($one){
        return '<h1> '.$one.' </h1>';
    }));
    // ...
    $twig->addFunction('displayResponseMessage', new Twig_Function_Function('displayResponseMessage'));
    // ...

我一无所知(

要解决您的问题,您应该提供is_safe选项:

$twig->addFunction(new Twig_SimpleFunction('test2',function($one){
    return '<h1> '.$one.' </h1>';
}), array('is_safe' => array('html'));

查看文档。

无论如何,我建议你看看导入标签,因为Twig已经处理了你的需求。