ホームページ  >  記事  >  バックエンド開発  >  ThinkPHP テンプレート変数出力を呼び出す方法は何ですか?

ThinkPHP テンプレート変数出力を呼び出す方法は何ですか?

WBOY
WBOYオリジナル
2016-07-25 08:53:081417ブラウズ
  1. {$変数名} 例: {$username} //通常の変数 {$userinfo["email"]} //配列モード {$userinfo["sub"]["name"]} //3 -次元配列モード {$userinfo:email} //オブジェクト モード {$userinfo.email}...
コードをコピー

通常の出力 テンプレート内の変数を次の形式で出力します。 {$変数名}

例:

  1. {$username} //通常の変数
  2. {$userinfo["email"]} //配列メソッド
  3. {$userinfo["sub"]["name"]}//三次元配列メソッド
  4. { $userinfo:email} //オブジェクト モード
  5. {$userinfo.email} //配列またはオブジェクト モードを自動的に決定します
コードをコピー

デフォルトの出力 出力テンプレート変数に値がないが、表示時にデフォルト値を割り当てる必要がある場合は、デフォルト構文を使用してデフォルトで値を表示できます。

形式: {$variable|default="デフォルト値"} 例:

  1. {$username|default="Anonymous"}
コードをコピー

関数を使用 テンプレート変数を使用した関数の使用 テンプレート エンジンは、出力変数の書式設定、つまり関数の使用をサポートし、複数の関数をサポートします。

形式: {$variable|function1|...|functionn=パラメータ1,...,パラメータ,###} 関数は変数を左から右に実行します。結果が取得された後、関数 1 が最初に実行され、次に関数 2 が実行されます。デフォルトでは、実行結果が最初に使用されます。次の関数のパラメータ。

例:

  1. {$webTitle|md5|strtoupper|substr=0,3}
コードをコピーします

実際の実行結果は次と同等です: 変数または前の関数の実行結果が関数または次の関数の最初のパラメーターではない場合は、ロケーター "###" を使用する必要があります。 {$userinfo["regdate"]|date="Y-m-d H:i",###} 実際の実行結果は次と同等です。

  1. echo date("y-m-d H:i",$userinfo["regdate"]|);
  2. ?>
コードをコピー

ヒント 変数で使用できる関数の数に制限はありませんが、テンプレート出力の破損を防ぐために、exit 関数と echo 関数はデフォルトで無効になっています。無効化された機能の具体的な設定については、「ThinkPHP システム設定」を参照してください。

テンプレートは関数を直接使用します テンプレート ファイルは、テンプレート変数を渡さずに関数を直接呼び出すためのショートカット メソッドもサポートしています。これには、次の 2 つのメソッドが含まれます:

1.関数を実行して戻り値を出力します

形式: {:関数} 例:

  1. {:say_hello('ThinkPHP')} //say_hello() はユーザー定義関数です
  2. 実際の実行結果は次と同等です:
  3. echo Say_hello('ThinkPHP');
  4. ?> ;
コードをコピー

2. 関数を実行しますが、出力はしません フォーマット: {~関数} 例:

  1. {~say_hello('ThinkPHP')} //say_hello() はユーザー定義関数です
  2. 実際の実行結果は次と同等です:
  3. say_hello('ThinkPHP');
  4. ? >
コードをコピー

上記の 2 つのメソッドは、関数のパラメーターとしてテンプレート変数を渡すこともサポートしています。

システム変数出力 システム変数には、server、session、post、get、request、cookie、env が含まれます。システム変数の出力を事前にテンプレート変数に割り当てる必要はありません。システム変数の出力は $Think. で始まり、関数の使用は引き続きサポートされます。

例:

  1. {$Think.session.session_id|md5} //$_SESSION変数を出力し、md5暗号化を使用します
  2. //または
  3. {$_SESSION_id|md5}と省略されます
  4. //$_GET変数を出力します。
  5. { $_GET.pageNumber}
コードをコピー

システム定数出力 $Think.const を使用してシステム定数を出力します。

例:

  1. {$Think.const.ACTION_NAME} //ThinkPHP システム定義の定数 ACTION_NAME (現在の操作名) を出力します
  2. //または
  3. {$Think.ACTION_NAME} と省略されます
コードをコピー

設定パラメータの出力 $Think.config を使用して、プロジェクトの構成パラメーター値を出力します。

例:

  1. {$Think.config.DB_PREFIX}
コードをコピー

出力値はC('DB_PREFIX')の戻り結果と同じです。

素早い出力 テンプレート定義をより簡潔にするために、システムは、次のような一般的に使用されるいくつかの変数出力ショートカット タグもサポートしています。

  1. {@var} は {$Think.session.var} と同等、出力セッション変数
  2. {#var} は {$Think.cookie.var} 、出力 Cookie 変数
  3. {&var と同等です。 } は {$Think.config.var} と同等、出力構成パラメータ
  4. {%var} は {$Think.lang.var} と同等、出力言語変数
  5. {.var} は { $Think.get.var} 、出力 GET 変数
  6. {^var} は {$Think.post.var} と同等、出力 POST 変数
  7. {*var} は {$Think.const.var} と同等、出力定数
コードをコピー

ヒント クイック出力は関数の使用をサポートしていません テンプレートを読みやすくするために、ショートカット出力方法の使用はお勧めしません



声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。