hitoshop14 @ ウィキ
変数・修飾子・関数・フォーマットなど
最終更新:
hitoshop
-
view
変数・修飾子・関数・フォーマットなど
変数
◆変数の参照方法
変数式 | 意味 |
{ $goods } | スカラ変数goodsの値 |
{ $goods[0] } | 単純配列goodsの、0番目の要素 |
{ $goods.name } | 連想配列goodsの、name要素 |
{ $goods->name } | オブジェクトgoodsのnameプロパティー |
{ $goods->name() } | オブジェクトgoodsのnameメソッド |
◆予約変数{ $smarty }を介して取得できる情報
カテゴリ | 構文 | 概要 | 使用例 |
リクエスト |
{$smarty.get.パラメータ名} | クエリ情報($_GET) | {$smarty.get.id} |
{$smarty.post.パラメータ名} | ポストデータ($_POST) | {$smarty.post.name} | |
{$smarty.cookies.パラメータ名} | クッキー情報($_COOKIE) | {$smarty.cookie.email} | |
{$smarty.session.パラメータ名} | セッション情報($_SESSION) | {$smarty.session.usrid} | |
{$smarty.server.パラメータ名} | サーバ変数($_SERVER) | {$smarty.server. HTTP_USER_AGENT} |
|
{$smarty.env.パラメータ名} | 環境変数($_ENV) | {$smarty.env.Path} | |
変数/定数 | {$smarty.config.パラメータ名} | 設定ファイルの値 | {$smarty.config.author} |
{$smarty.cost.定数名} | PHP定数の値 | {$smarty.cont. SITE_URL} |
|
{$smarty.now} | 現在時刻 | {$smarty.now | date_format :'%Y年 %m月 %d日' } |
|
ループ | {$smarty.foreach.ループ名.変数名} | ループ情報 | foreachのページを参照 |
エスケープ | {$smarty.ldelim} | 左デリミタ | {$smarty.ldelim} |
{$smarty.rdelim} | 右デリミタ | {$smarty.rdelim} | |
情報 | {$smarty.template} | 実行中のテンプレート名 | {$smarty.template} |
{$smarty.version} | Smartyのバージョン | {$smarty.version} | |
その他 | {$smarty.capture.ブロック名} | キャプチャされたコンテンツ | {$smarty.capture.header} |
◆修飾子
カテゴリ | 修飾子 | 概要 |
加工 | capitalize | 単語の頭文字を大文字に変換 |
cat:'文字列' | 指定された変数を連結 | |
lower | 小文字に変換 | |
upper | 大文字に変換 | |
regex_replace:'置換前':'置換後' | 置換(正規表現対応) | |
replace:'置換前':'置換後' | 置換(正規表現未対応) | |
フォーマット | date_format:'フォーマット文字列' | 日付のフォーマット |
string_format:'フォーマット文字列' | 文字列のフォーマット | |
defult:'デフォルト値' | デフォルト値の設定 | |
特殊文字処理 | strip | 空白の除去・置換 |
string_tags | タグの除去 | |
nl2br | 改行文字を(</ br>)タグ変換 | |
escape:'エスケープ型' | エスケープ処理 |
- 文字列・数値は、クォート【 ' 】で囲んでも囲まなくてもよい。
- true/falseは、クォート【 ' 】で囲んではいけない。
- 変数・変数値は、クォート【 ' 】で囲むべきではない。
◆Smartyで利用可能な変数
カテゴリ | 関数 | 概要 |
変数 | assign | テンプレート変数に値をセット |
capture | 出力内容を変数にセット | |
制御構文 | if | 条件分岐 |
foreach | 繰り返し処理(1) | |
section | 繰り返し処理(2) | |
include | 外部テンプレートをインクルード | |
include_php | 外部のphpファイルのインクルード(非推奨) | |
inser | 外部テンプレートをインクルード(キャッシュ無効) | |
fetch | 外部ファイル取り込み(http/ftp対応) | |
config_load | 設定ファイルの読み込み | |
eval | 指定された変数をテンプレートとして処理 | |
補助制御 | counter | カウンタ管理 |
cycle | 値のセットを交互に出力 | |
エスケープ | ldelim | 左デリミタ |
rdelim | 右デリミタ | |
literal | テンプレートエンジンからコード隠蔽 | |
加工 | strip | 出力から空白除去 |
textformat | テキストを整形 | |
mailto | mailto:リンクの生成 | |
HTMLタグ | html_checkboxes | チェックボックスの集合 |
html_image | イメージ | |
html_options | プルダウンメニュー | |
html_radios | ラジオボタンの集合 | |
html_select_date | 日付のプルダウンメニュー | |
html_select_time | 時刻のプルダウンメニュー | |
html_table | テーブル | |
JavaScript | popup_init | ポップアップウィンドウの初期化 |
popup | ポップアップウィンドウの表示 | |
その他 | php | phpスクリプト記述 |
debug | デバッキングコンソールを有効化 | |
math | 方程式の演算 |
◆日付・数値のデータフォーマット
フォーマット文字列 | 概要 |
%a | 現ロケールの基づく曜日名(省略名) |
%A | 現ロケールの基づく曜日名(完全名) |
%b | 現ロケールの基づく月名(省略名) |
%B | 現ロケールの基づく月名(完全名) |
%c | 現ロケールの基づく日付・時刻 |
%C | 世紀(00~99) |
%d | 日付(1~31) |
%D | '%m%d%y'と同じ |
%e | 日付(1~31)。1桁の場合、先頭に空白を付加 |
%h | '%b'と同じ |
%H | 時間(00~23)。24時間表記 |
%I | 時間(01~12)。12時間表記 |
%j | 年通算の日付(001~366) |
%m | 月(01~12) |
%M | 分(00~59) |
%n | 改行文字 |
%p | 現ロケールの基づく(AM/PM) |
%r | 時間(a.m./p.m.) |
%R | 時間。24時間表記 |
%S | 秒(00~59) |
%t | タブ文字 |
%T | '%H:%M:%S'と同じ |
%u | 曜日。1(月曜)~7(日曜) |
%U | 年通算で何番目の週か算出(最初の日曜を最初の週) |
%V | 年通算で何番目の週か算出(最低4日ある最初の週を1) |
%W | 年通算で何番目の週か算出(最初の月曜を最初の週) |
%w | 曜日。0(日曜)~6(月曜) |
%x | 現ロケールに基づく日付(時刻を除く) |
%X | 現ロケールに基づく時刻(日付を除く) |
%y | 2桁の年(00~99) |
%Y | 4桁の年 |
%Z | タイムゾーン |
%% | '%'(文字リテラル) |
サンプル
現在の時刻は、{ $smarty.now | date_format : '%Y年 %m月 %e日
%H:%M:%S' } です。
出力結果 現在の時刻は、2008年11月11日 21:28:43です。
現在の売上金額は、{ '1058421.185' | number_format : 2 }です。
出力結果 現在の売上金額は、1058,421.19です。