Smarty显示编译文件中的错误


Smarty shows errors from compiled files

我使用Smarty3作为模板引擎,每次我收到模板中的PHP警告或通知时,它都会告诉我这样的事情:

Notice: Undefined index: tab in C:'xampp'htdocs'<project>'cms'application'tmp'compile'2ca7baf79266ad8c26c12b77578df81e640dbf89.file.index.phtml.php on line 66

我知道如何解决这个错误,但这条消息并没有告诉我错误发生在哪个文件中。Smarty有没有办法告诉我我必须寻找的真实/原始文件来修复错误?

再说一遍,我的问题不是找不到错误。问题是Smarty没有告诉我在哪个文件和行中查找错误。

此外,由于以下代码导致错误消息不正确:

{if count($tab['columns']) > 0} 
...
{/if}

没有定义的不是索引,而是变量。这怎么可能?

在第66行,您正在调用一个带有索引选项卡的数组array[tab],但该数组中不存在此索引

您可以在Smarty中启用调试:http://www.smarty.net/docsv2/es/chapter.debugging.console.tpl

问题的解决方案是将Smarty更新到最新版本。