smartyでの変数・配列の表示方法です。
ちなみに、php
側でテンプレートにどんな値を返すかを設定されているのですが、ここではフロント側の作業としてテンプレートでのsmarty
の扱いのみ紹介しています。
テンプレートに渡っている変数を表示する。
まずは配列でもオブジェクトでもない単純な変数の表示です。
仮にarena_rank
という変数があった場合下記のように頭に$
をつけて{}
でくくるだけです。これでテンプレートに
ランキング {$arena_rank} 位
テンプレートに渡っている配列を表示する
まずはPHPでいうところのvar_dump
でデータを調べます。
詳しくは[Smarty]テンプレートの変数・配列を調べるをご覧ください。
{$rank_list|@debug_print_var}
先日紹介したdebug_print_var
で中身を確認してみると$rank_list
の中身が下記の通りだったとします。
0 "山田" 1 "田中" 2 "中山"
上記例で例えば一番最初の山田を表示したい場合は下記の通りになります。
幾つか書き方があります。
{$rank_list[0]} {$rank_list.0}
また連想配列も同様です。
$user
に渡ってきている値が下記の通りだとします。
name "山田" mail "aaa@aaa.com" tel "000-0000-0000"
mailアドレスを表示したい場合は
{$user.mail}
配列の表示する時に変数のキーを使用することもできます。
{$rank_list.$arena_rank}
arena_rank
の数値によって表示される名前が変わります。
基本的な表示方法の紹介になります。
Smartyおすすめ書籍
Smartyは古い書籍しかなく、Kindle版しかありませんでしたが下記が入門におすすめです。
「Smarty 3を覚える本」