我的Twig模板参数被忽略

时间:2015-08-30 20:18:54

标签: php symfony twig

我在自定义应用程序中使用独立的Twig实例,但传递给模板的参数(上下文)似乎被惊人地忽略了。

执行以下代码会导致此错误:

致命错误:未捕获的异常' Twig_Error_Runtime'消息'变量" MSG"在" hello.twig"中不存在(...)

test.php的

$options = array(
      'charset' => 'utf-8',
      'debug' => true,
      'strict_variables' => true,
);

$env = new Twig_Environment(new \Twig_Loader_Filesystem(getcwd()), $options);

return $env->render("hello.twig", array('msg' => 'World'));
// I also tried this
return $env->loadTemplate("hello.twig")->render(array('msg' => 'World'));

hello.twig

Hello {{ msg }}

注册全局变量($ env-> addGlobal(' msg',' Everybody'))不再成功。

我是否遗漏了某些东西或它应该有效?

1 个答案:

答案 0 :(得分:0)

正如ElefantPhace指出的那样,{{在树枝模板中,导致错误的变量名称后出现了一个不可靠的空间。用常规空格替换它解决了这个问题:)