我正在使用带有twig 1.0的symfony 2.3.*当显示未声明的变量时,Twig不会抛出任何错误.忽略所有错误.
例如,我有任何未定义的变量' test'我可以执行以下操作,并且没有错误只显示空白文本.
{{ test }}
{{ test.do() }}
{{ test.test2 }}
Run Code Online (Sandbox Code Playgroud)
有没有设置可以重新开启?
是的,strict_variables树枝的选择.在symfony标准安装中,twig配置默认为
# Twig Configuration
twig:
debug: "%kernel.debug%"
strict_variables: "%kernel.debug%"
Run Code Online (Sandbox Code Playgroud)
这意味着它取决于内核的调试选项.在prod环境中,这当然应该是假的,但是在开发环境中它应该默认为true并且twig应该抛出异常.如果dev中的内核调试不正确,请检查您的web/app_dev.php文件.它应该AppKernel使用以下行初始化.
$kernel = new AppKernel('dev', true);
Run Code Online (Sandbox Code Playgroud)