所以..我一直试图在我的扩展程序中获取twig变量。
首先我尝试从$environment->getGlobals()
获得..但事实上,这只是全局变量。然后我尝试引用getCompiler()
内部的不同部分,没有果汁,我试过很多东西而不是锁定我的浏览器或php实例。
那么我想做什么?
在我的枝条模板中,我正在做这个
{% set myvariable = "something" %}
在我的twig扩展中,当我调用一个特定的函数时,我想看看这个变量是否被设置了一些东西,如果它被设置了什么我想要执行一个特定的动作。
答案 0 :(得分:0)
如果您可以访问调用扩展程序的上下文,那么您应该能够找到它。
答案 1 :(得分:0)
你看过Twig's Global Variables for Templates了吗?我正在寻找类似的东西(一种在模板上下文中设置所有变量的机制),偶然发现_context
全局变量,它保存了我需要的所有内容。
答案 2 :(得分:0)
您可以通过将全局变量_context
传递给您的函数来将枝条变量传递到您的枝条扩展。 _context
是一个包含模板中所有变量的数组。
{{ my_twig_function(_context) }}