Smarty には、PHP スクリプトで割り当てる必要なく直接使用できる予約変数がいくつかあります。つまり、それらを割り当てるために $_tpl->assign('var','value') を使用する必要はありません。 。
1. テンプレート内のページで要求された変数にアクセスします
{$smarty.get.user} == $_GET['user']
{$smarty.post.user} == $_POST['user']
{$smarty.cookie.ユーザー名} == $_COOKIE['ユーザー名']
{$smarty.session.username} == $_SESSION['username']
{$smarty.server.REMOTE_ADDR} == $_SERVER["REMOTE_ADDR"]
{$smarty.env.PATH} == $_ENV['PATH']
{$smarty.request.ユーザー名} == $_REQUEST['ユーザー名']
2.テンプレートファイル内のPHPスクリプトで定義されている定数とシステム定数にアクセスします
{$smarty.const.__FILE__} は現在 PHP ファイルを実行しています
{$smarty.const.CONST_VAR} PHP スクリプトの define で定義された定数にアクセスします
3. テンプレートファイル内の現在のサーバー時刻を取得します
{$smarty.now|date_format:"%Y-%m-%d %H:%M:%S"} == PHP スクリプトの date('Y-m-d H:i:s',time())
4. テンプレート内の設定ファイルへのアクセス
構成ファイル内のテンプレート変数には、{$smarty.config.Configuration Variables} を通じてアクセスできます。この場合、テンプレート内の構成ファイル内の変数にアクセスするには 2 つの方法があります: 1. {#Configuration Variables#}; 2. {$smarty.config.Configuration Variables} (ゾーンがある場合は同じです)真実。
5. Smarty の組み込み関数キャプチャによってキャプチャされたデータを取得します
キャプチャ関数の機能は、テンプレートによって出力されたデータをページに出力するのではなく、キャプチャして変数に格納することです。{capture name="foo"} と {/capture} の間のデータはすべて In に格納されます。変数 $foo の場合、変数は name 属性で指定されます。テンプレート内の $smarty.capture.foo を通じてこの変数にアクセスします。 name 属性が指定されていない場合、関数はデフォルトでパラメーターとして「default」を使用します