您如何在Smarty模板的上下文中打印所有可用变量?类似于列出传递的所有内容的Django调试跟踪。谢谢
使用 {debug}
来自手册:
{debug}
将调试控制台转储到页面上。这不受 php 脚本中的调试设置影响。由于它在运行时执行,因此只能显示已分配的变量;而不能显示正在使用的模板。但是,您可以看到模板范围内当前可用的所有变量。
要查看窗口,必须在您的设置或类中启用 $debugging = true
,并解除站点弹出窗口的阻止。
var_dump($Smarty->_tpl_vars);
来自 Smarty 代码 :)
Smarty 3更新的答案:getTemplateVars
// If no parameter is given, an array of all assigned variables are returned.
$all_tpl_vars = $smarty->getTemplateVars();
$all_tpl_vars = $smarty->getTemplateVars(); var_dump($all_tpl_vars);
//在推送到模板之前
exit;
{debug}
在 Smarty 2 和 3 中都可用。 - Machavity$debugging = true
,并且必须取消阻止站点弹出窗口才能看到窗口。 - vladkras{debug}
会导致内存限制。是否有从模板文件调用的函数仅显示已定义变量列表的功能? - userlond{debug}
证明是一个令人惊喜的发现! - Jono