Smartyは、タグの属性が不足していたり、誤った変数名を指定していた時のような多くのエラーをキャッチする事ができます。 キャッチすると次の例に似たようなエラーが表示されます。
Smartyはテンプレート名・エラー行番号・エラー内容を示します。その次のエラーは、Smartyクラスにおいてエラーが発生した実際の行番号から成るメッセージです。
タグの閉じ忘れのような、Smartyがキャッチできないエラーがあります。通常、このような場合のエラーはphpコンパイル時にパースエラーで終了します。
phpパースエラーの場合のエラー行番号は、テンプレートそのものではなくコンパイルされたphpスクリプトに一致します。通常、テンプレートを見ることでシンタックスエラーを見つけられます。一般的な間違いとしては、{if}{/if}や{section}{/section}タグの閉じ忘れや、{if}タグ内のロジックの構文の誤りなどがあります。もしエラーが見つけられない場合は、テンプレートのどこに該当するエラーがあるかを見い出すためにコンパイルされたphpファイルを開いて行番号のあたりを調べる必要があります。