{debug} は、デバッグコンソールをページに出力します。 これは、php スクリプト側での debug の設定にかかわらず動作します。実行時に処理が行われるので、 代入した 変数についてしか表示できず、 使用中のテンプレートについては表示できません。 しかし、テンプレートのスコープで現在使用可能なすべての変数を見ることができます。
キャッシュを有効にしていてページがキャッシュから読み込まれた場合は {debug} が表示するのはキャッシュされたページに代入されている変数だけです。
テンプレート内でローカルに代入された変数も見たい場合は、 {debug} タグをテンプレートの最後に置きます。
こんな便利な機能があったのね。 知らんかった。
テンプレートに渡した変数(配列)の中身を確認するのに便利です。
でも先にPHPファイルのエラーで止まった時には働かないんだけどね。
cl.pocari.org - Smarty を使った開発でデバッグを行う 4 つの方法
PHP のテンプレートエンジン Smarty を使って開発するときに,割り当てた変数が複雑になって困ることはありませんか?
その際,何らかの方法を使って割り当てた変数を確認するのですが,いくつか方法があります.
こちらの記事は、{debug} タグ以外にもいくつかの方法を示して頂いています。
あと、
{foreach},{foreachelse} | Smarty
array 変数に値がない場合に、 {foreachelse} が実行されます。
これも知らんかった。 精進します。