如何从我的枝条扩展中设置一个Twig变量?

时间:2012-08-04 23:56:20

标签: symfony twig

所以..我一直试图在我的扩展程序中获取twig变量。

首先我尝试从$environment->getGlobals()获得..但事实上,这只是全局变量。然后我尝试引用getCompiler()内部的不同部分,没有果汁,我试过很多东西而不是锁定我的浏览器或php实例。

那么我想做什么?

在我的枝条模板中,我正在做这个

{% set myvariable = "something" %}

在我的twig扩展中,当我调用一个特定的函数时,我想看看这个变量是否被设置了一些东西,如果它被设置了什么我想要执行一个特定的动作。

3 个答案:

答案 0 :(得分:0)

如果您可以访问调用扩展程序的上下文,那么您应该能够找到它。

答案 1 :(得分:0)

你看过Twig's Global Variables for Templates了吗?我正在寻找类似的东西(一种在模板上下文中设置所有变量的机制),偶然发现_context全局变量,它保存了我需要的所有内容。

答案 2 :(得分:0)

您可以通过将全局变量_context传递给您的函数来将枝条变量传递到您的枝条扩展。 _context是一个包含模板中所有变量的数组。

{{ my_twig_function(_context) }}
相关问题