0
它的posible获取块内所有可用的枝条块名称?怎么样?在运行时获取所有可用的枝条块名称
它的posible获取块内所有可用的枝条块名称?怎么样?在运行时获取所有可用的枝条块名称
你可以做到。任何编程语言或脚本语言工作流程的工作流程中有两个主要部分,即lexing和编译。在编译部分,Twig构建令牌树,然后将其编译为HTML(Twig internals)。
所有这些都在Twig_Environment类中调用,它在Symfony中用作服务。所以你可以做的是重写Twig_Environment tokenize
方法并获得你需要的所有令牌。然后您可以使用您自己的修改后的扩展名override the original service。
这就是你将如何返回所有的标记名称。您可以根据自己的需要进行调整。如果您需要令牌树本身,您也可以覆盖render
和/或parse
方法,或者您可以编写您自己可以从模板本身调用的更复杂的附加功能。可能性是无止境。请注意让代码与原始的Twig实现分开(使用覆盖),以便更轻松地进行更新。