ホームページ >バックエンド開発 >PHPチュートリアル >PHPテンプレートエンジンSmartyの組み込み関数sectionとsectionelseの使い方を詳しく解説、smartysectionelse_PHPチュートリアル
この記事では、PHPテンプレートエンジンSmartyの組み込み関数sectionとsectionelseの使い方を例を交えて解説します。参考のために皆さんと共有してください。詳細は次のとおりです:
Section は、foreach 以外に Smarty テンプレートでループを処理するためのもう 1 つのソリューションです。Section は、改良された foreach ステートメントと同様に、同じループ特性を備えているだけでなく、変更できる多くの追加オプションも提供します。制御ループの実行。テンプレートでは、ペアのセクション タグを使用する必要があります。名前とループの 2 つの属性を設定する必要があります。セクションの属性については、次の表を参照してください。
タイプ | 必要ですか | デフォルト値 | 説明 | |
---|---|---|---|---|
文字列 | はい | なし | ループの名前||
[$変数名] | はい | なし | ループ回数を決める変数名||
整数 | いいえ | 0 | ループ実行の最初の位置。値が負の場合、開始位置は配列の末尾から計算されます。たとえば、配列内に 7 つの要素があり、start を -2 として指定すると、インデックスはその配列を指します。現在の配列は 5 です。不正な値 (ループ配列の下限を超える) は、最も近い正当な値に自動的に調整されます。||
整数 | いいえ | 1 | この値はループのステップ サイズを決定します。たとえば、step=2 を指定すると、インデックス 0、2、4 などの要素のみが走査されます。step が負の値の場合は、配列を後ろから前に走査します。||
整数 | いいえ | 1 | ループ実行の最大数を設定します。||
ブール値 | いいえ | 本当 | ループを表示するかどうかを決定します。
変数名 | 説明 |
インデックス | 現在のループのインデックスを表示するために使用されます。0 から始まり (start 属性が設定されている場合はこの値から始まります)、毎回 1 ずつ増加します (step 属性が指定されている場合は、これによって決定されます)。値) |
index_prev | 前のループインデックス値を表示するために使用されます。ループが開始されると、この値は-1になります |
index_next | ループが最後に実行されるとき、この値はまだ現在のインデックス値より 1 大きい値を表示するために使用されます (ステップ属性が指定されている場合、この値によって決定されます) |
反復 | ループ数を表示するために使用されます |
最初に | 現在のセクションループが初めて実行されるとき、この変数の値は true になります |
最後 | 現在のセクションのループが最後に実行されるとき、この変数の値は true になります |
ロウナム | ループの数を表示するために使用されます。この属性は反復のエイリアスであり、どちらも同じです |
ループ | ループの最後のループのインデックス値を表示するために使用されます。この値はループ内またはループ終了後に使用できます。 |
はセクションのパラメータです。show の値はブール値 true または false に設定すると、ループは表示されません。 Sectionelse句が指定されている場合、その句が表示されるかどうかもこの値に依存します | |
ループの実行回数を表示するために使用されます。このプロパティはループ内だけでなく、実行終了後にも呼び出すことができます |