前回の記事からの続きです
11. セクション、セクションエルス セクションはループ構造のステートメントであり、主に配列を走査するために使用されます
文法:
{セクション名=nameloop=ループ配列(回数)start=start(0)step=step(1)max=最大ループ回数}
{sectionelse}
{/セクション}
名前: セクションステートメントに名前を付けます 必須
ループ: ループ配列が必要です
開始: 開始インデックスデフォルト値: 0
ステップ: ステップサイズ デフォルト値: 1
Max: ループの最大数 デフォルト値: 全長
Foreach とセクションの違い:
Foreach は配列を直接走査することを指します
セクションはループ文であり、そのループ数は配列の数によって決まります
セクションには配列を走査する際のより多くのオプションがあります
lセクションの組み込み変数
{$smarty.section.name.index} ループインデックス
{$smarty.section.name.index_prev} 最後のループのインデックス
️ {$smarty.section.name.index_next} 次のサイクルのインデックス{$smarty.section.name.iteration} ループインデックスは 1 から始まります
Ar {$ SMARTY.SECTION.NAME.FIRST | Last} 最初と最後の実行の 2 つの値は true です
Ar {$ Smarty.section.name.total} 合計サイクル数12. ストリップ 前後の連続するスペースを削除します
文法:
{ストリップ}
…
{/ストリップ}
2.カスタム機能
1. テンプレート変数を作成する
{assign var=“var” value=“value”}
Var: 変数名を指定します
値: 変数の値を指定します
2.カウンターカウンター
文法:{カウンター開始=0スキップ=2プリント=false}
開始: 開始値
スキップ: ステップサイズ、デフォルトは 1 です
Print: 今回出力するかどうか
3. 回転を実現する
値: 回転する値のリスト
4. デバッグ デバッグウィンドウを開きます
5. eval 変数の値を計算します
文法:{eval var=#ErrorState# assign="state_error"}
Var: 計算する変数名
割り当て: 結果を保存しますが、今回は出力しません
6. fetch ファイルの内容を読み取って出力します
{fetch file="file" assign="var"}
ファイル: ファイル名
Assign: 保存された結果は今回は出力されません
7. html_image ページ内で画像を印刷します
{html_image file="pumpkin.jpg"}ファイル: 画像アドレス
8. html_table 配列要素をテーブルに表示します (単純な配列にのみ適用可能)
{html_table LOOP=$data Cols=4 table_attr='border="0"'}
ループ: 走査する配列を追加する必要があります
列: 各行に表示されるセルの数。デフォルトは 3 です。
Table_atr: テーブル属性
9. html_checkboxes チェックボックスのセットを印刷します
{html_checkboxes 値=$cust_ids チェック済み=$customer_id 出力=$cust_names 区切り文字="
値: 値の配列
チェック済み: 選択した項目の値の配列
出力: テキストの配列
区切り文字: 各チェックオプション間の区切り文字
名前: このチェックボックスのグループに名前を付けます 注: Smarty は配列を示すために [] を自動的に追加します
テンプレートコード:
PHPコード: