忽略树枝中的未知标签

时间:2012-02-14 09:20:22

标签: php twig

我有一些用Twig编写的模板。然后我编写了一个单独的脚本来使用CLI运行。这个脚本允许我扫描我的模板并编译我的Assetic资产。

问题是我有一些自定义的Twig令牌解析器供应用程序使用,但是,脚本不需要它们来扫描和编译我的Assets。其中一些标签非常复杂,需要完整的应用程序才能运行。

是否有一种简单的方法让Twig忽略未知标记?

一种可能的解决方案是创建一个虚拟标记解析器,并为其指定与标记相同的名称,但这对我来说似乎非常虚伪,我希望避免走这条路。

1 个答案:

答案 0 :(得分:0)

我只是编写了一个令牌解析器,将令牌解析器移动到块的末尾。

我还提供了一种在构造函数中设置'token name'的方法: $twig->addTokenParser(new DummyTokenParser('abc'));

这将允许DummyTokenParser接管名为abc的标签。

可以使用它来替换多种类型的标签:

$twig->addTokenParser(new DummyTokenParser('tag1'));
$twig->addTokenParser(new DummyTokenParser('tag2'));