予約変数{$smarty}

予約変数{$smarty}は、いくつかの特別なテンプレート変数にアクセスするために使われます。

リクエスト変数

get, post, cookies, server, environment, sessionのようなリクエスト変数には次のようにアクセスします。

例 4-6. リクエスト変数を表示

{* (GET) http://www.domain.com/index.php?page=foo から、pageの値を表示 *}
{$smarty.get.page}

{* (POST) フォームから送信された変数"page"の値を表示 *}
{$smarty.post.page}

{* クッキーに登録された"username"の値を表示 *}
{$smarty.cookies.username}

{* サーバ変数"SERVER_NAME"の値を表示 *}
{$smarty.server.SERVER_NAME}

{* 環境変数"PATH"の値を表示 *}
{$smarty.env.PATH}

{* phpのセッション変数"id"の値を表示 *}
{$smarty.session.id}

{* get/post/cookies/server/envの値から、変数"username"の値を表示 *}
{$smarty.request.username}

注意: 注: {$smarty.server.SCRIPT_NAME} はサーバ変数 SCRIPT_NAME にアクセスするために提案された方法ですが、 歴史的な理由から、{$SCRIPT_NAME} はこれを通して直接アクセスする事が出来ます。

{$smarty.now}

現在のタイムスタンプには、{$smarty.now}によってアクセスできます。 この時間にはエポック(January 1, 1970)から経過した秒数が反映されます。 表示フォーマットのために、修正子date_formatに値を渡す事も可能です。

例 4-7. {$smarty.now}を使用する

{* use the date_format modifier to show current date and time *}
{$smarty.now|date_format:"%Y-%m-%d %H:%M:%S"}

{$smarty.const}

PHP定数の値に直接アクセス出来ます。

例 4-8. using {$smarty.const}

{$smarty.const._MY_CONST_VAL}

{$smarty.capture}

{capture}..{/capture}によってキャプチャされた出力は、{$smarty.capture}変数によってアクセスできます。 詳細はcaptureの項を参照して下さい。

{$smarty.config}

{$smarty}変数は読み込まれたコンフィグ変数を参照するのに使用出来ます。 {$smarty.config.foo}は、{#foo#}と同義です。詳細や例は config_load を参照して下さい。

{$smarty.section}, {$smarty.foreach}

これらの変数は、ループプロパティ'section'及び'foreach'を参照するために使われます。 詳細はsection, foreachの項を参照して下さい。

{$smarty.template}

この変数には処理されている現在のテンプレートの名前が含まれます。

{$smarty.version}

この変数にはテンプレートのコンパイルに使用されたSmartyのバージョンが含まれます。

{$smarty.ldelim}

この変数は左デリミタをそのまま表示するために使用されます。 詳細: {ldelim},{rdelim}.

{$smarty.rdelim}

この変数は右デリミタをそのまま表示するために使用されます。 詳細: {rdelim},{rdelim}.