📅  最后修改于: 2023-12-03 15:25:45.853000             🧑  作者: Mango
在 Twig 模板中,可以通过 {{ dump() }}
函数打印当前作用域中的所有变量,以便调试。
{# 以宏的形式封装 {{ dump() }} 函数 #}
{% macro dump_vars() %}
{{ dump() }}
{% endmacro %}
{# 调用宏 #}
{{ _self.dump_vars() }}
使用以上代码,即可在页面看到一个包含页面上下文以及所有变量的调试信息。
如果需要更加详细的打印信息,可以使用 Debug 工具的 Kint 扩展进行打印。需要在模板中使用 dump()
函数时,先安装 Kint 扩展:
composer require kint-php/kint:^3.0
安装完成后,就可以在模板中使用 {{ d(...) }}
函数打印:
{{ d(app.request.headers) }}
需要注意的是,上面的代码使用 app.request.headers
打印了请求头信息,如果使用 {{ dump(app.request.headers) }}
进行打印,则会在页面上出现大量的打印信息。
Twig Debug 是一个官方维护的调试工具包,它提供了一套调试工具,包括打印当前变量、跟踪模板、打印模板结构、打印 Twig 语法分析树等等。
安装 Twig Debug:
composer require twig/debug-bundle
在 config/packages/twig.yaml
中添加框架设置:
twig:
debug: true
... # 其他配置
然后在 Twig 模板中使用 {{ dump() }}
函数进行打印即可:
{{ dump(app.request.attributes) }}
Twig Debug 还提供了更多调试工具,具体详见文档。