インデックスを使用して HTML テンプレートで並列配列を反復処理する方法
この記事では、(同じサイズの) 並列配列を反復処理する際の難しさを扱います。 HTML テンプレートで。具体的には、範囲ブロック内でインデックス関数を利用してこれを実現する方法です。
インデックス関数は、指定されたインデックスに基づいてマップ、スライス、または配列から項目を取得する、事前定義されたグローバル テンプレート関数です。この関数を使用すると、テンプレート内のデータ構造内で複雑なナビゲーションが可能になります。
並列配列を反復処理するコンテキストでは、インデックス関数が使用されるコンテキストに注意する必要があります。デフォルトでは、範囲ブロック内のドット (${}) は、反復される配列内の現在の要素を参照します。ただし、他の配列のデータにアクセスするには、Execute 関数に渡されたデータ引数を表す元のドットに戻す必要があります。
したがって、解決策は元のドット ($) を使用することです。インデックス式のドットの代わりに:
{{range $i, $e := .First}}{{$e}} - {{index $.Second $i}}{{end}}
この調整により、インデックス関数が元のデータ引数を参照するようになり、配列の並列反復が可能になります。
この問題に取り組む別のアプローチは次のとおりです。 zip というカスタム テンプレート関数を定義します。この関数は複数のスライスを入力として受け入れ、値のペアのスライスを返します。このような関数はテンプレート コードを簡素化し、他のコンテキストで再利用できる可能性があります。
以上が`index` 関数を使用して HTML テンプレート内の並列配列を反復処理する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。