我在自定义应用程序中使用独立的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'))不再成功。
我是否遗漏了某些东西或它应该有效?
答案 0 :(得分:0)
正如ElefantPhace指出的那样,{{在树枝模板中,导致错误的变量名称后出现了一个不可靠的空间。用常规空格替换它解决了这个问题:)