Smarty/PHP errors错误
Smarty can catch many errors such as missing tag attributes or malformed
variable names. If this happens, you will see an error similar to the following:
Smarty能够发现许多类似缺少标签属性或者不规范变量名这样的错误。如果发生这种错误,就会有下面的错误提示:
Example 17-1. Smarty errors错误
Warning: Smarty: [in index.tpl line 4]: syntax error: unknown tag - '%blah'
in /path/to/smarty/Smarty.class.php on line 1041
警告:Smarty: 在index.tpl文件第4行,语法错误:'%blah'标签未知
Fatal error: Smarty: [in index.tpl line 28]: syntax error: missing section name
in /path/to/smarty/Smarty.class.php on line 1041
严重错误:Smarty: 在index.tpl文件第28行,语法错误:缺少节段名字在 /path/to/smarty/路径中的Smarty.class.php文件1041行
Smarty shows you the template name, the line number and the error. After
that, the error consists of the actual line number in the Smarty class that the
error occured.
Smarty可以显示模板名称以及行号和错误。这些错误显示未所发生错误所属的smarty类所在的实际行号。
There are certain errors that Smarty cannot catch, such as missing close
tags. These types of errors usually end up in PHP compile-time parsing errors.
某些错误Smarty不能捕捉,像缺少结束标签。这些类型的错误通常会在在php分析语法错误的编译时间中就捕捉出来了.
Example 17-2. PHP parsing errors
Parse error: parse error in /path/to/smarty/templates_c/index.tpl.php on line 75
When you encounter a PHP parsing error, the error line number will correspond
to the compiled PHP script, not the template itself. Usually you can look at the
template and spot the syntax error. Here are some common things to look for:
missing close tags for {if}{/if} or {section}{/section}, or syntax of logic
within an {if} tag. If you can't find the error, you might have to open the
compiled PHP file and go to the line number to figure out where the
corresponding error is in the template.
当你遇到一个php解析错误时,错误行号将反应到php编译脚本,而不是模板本身。通常,你会看到模板并发现语法错误。通常会发现:缺少if}{/if} 或者
{section}{/section}的结束标签。或者{if}标签内的逻辑语法错误。如果你不能检查出错误,那就得在模板中打开php编译文件按照行号找出相应错误。