Comment parcourir des tableaux parallèles dans des modèles HTML à l'aide d'index
Cet article aborde la difficulté d'itérer sur des tableaux parallèles (de taille égale) dans les modèles HTML. Plus précisément, comment utiliser la fonction d'index dans le bloc de plage pour y parvenir.
La fonction d'index est une fonction de modèle global prédéfinie qui récupère un élément d'une carte, d'une tranche ou d'un tableau en fonction de l'index fourni. Cette fonction permet une navigation complexe au sein des structures de données au sein de modèles.
Dans le contexte d'une itération dans des tableaux parallèles, nous devons être conscients du contexte dans lequel la fonction d'index est utilisée. Par défaut, le point (${}) dans le bloc de plage fait référence à l'élément actuel du tableau en cours d'itération. Cependant, pour accéder aux données de l'autre tableau, nous devons revenir au point d'origine, qui représente l'argument de données transmis à la fonction Execute.
La solution est donc d'utiliser le point d'origine ($) au lieu d'un point dans l'expression d'index :
{{range $i, $e := .First}}{{$e}} - {{index $.Second $i}}{{end}}
Cet ajustement garantit que la fonction d'index fait référence à l'argument de données d'origine, permettant une itération parallèle sur les tableaux.
Une autre approche pour résoudre ce problème est pour définir une fonction de modèle personnalisée appelée zip, qui accepte plusieurs tranches en entrée et renvoie une tranche de paires de valeurs. une telle fonction simplifierait le code du modèle et serait peut-être réutilisée dans d'autres contextes.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!