L'éditeur PHP Zimo souhaite partager avec vous une question sur l'affichage des images : lorsque l'image est un élément d'un tableau d'objets, comment afficher l'image stockée en ressource de page ? Il s'agit d'un problème courant, en particulier dans les scénarios liés au téléchargement et à l'affichage d'images. En PHP, nous pouvons afficher des images en utilisant la balise de HTML, et en combinaison avec les instructions de boucle et de sortie de PHP, nous pouvons facilement parcourir le tableau d'objets et afficher l'image sur la page. Vous trouverez ci-dessous un exemple de code simple pour vous aider à comprendre comment implémenter cette fonction. Tout d'abord, nous supposons qu'il existe déjà un tableau d'objets $images, qui stocke des informations sur plusieurs images, y compris le chemin et le nom de l'image. Ensuite, nous pouvons utiliser une boucle foreach pour parcourir le tableau, utiliser l'instruction echo dans la boucle pour afficher la balise et définir l'attribut src sur le chemin de l'image. De cette façon, lors du chargement de la page, toutes les images seront affichées automatiquement. J'espère que cet exemple simple pourra aider tout le monde à résoudre des problèmes similaires. Si vous avez d'autres questions, veuillez laisser un message pour en discuter.
L'image sur ma page d'accueil est stockée comme ceci :
images: - image: image_1.jpg caption: "image 1 caption" - image: image_2.jpg caption: "image 2 caption"
Je veux seulement montrer le premier, j'utilise donc ce qui suit :
{{ $image := .resources.getmatch (printf "**%s" (index .params.images 0).image) }}
Étrangement, cela ne fonctionne que si j'ajoute la partie .image
lors de l'exécution sur un serveur Hugo local. Une fois que je m'arrête et redémarre, le site ne parvient pas à se reconstruire avec l'erreur suivante :
... execute of template failed: template: partials/content/figure.html:7:70: executing "partials/content/figure.html" at <0>: can't evaluate field image in type string
Je veux juste pouvoir accéder aux images[0].image
. Comment puis-je faire ceci? images[0].image
。我怎样才能做到这一点?
事实证明,我还有一些其他内容类型,其中前面的 images
Solution de contournement
images
précédentes sont toujours un simple tableau, pas un tableau d'objets. Cela a entraîné une erreur de construction pour moi. Pour résoudre ce problème, j'ai utilisé les suggestions suivantes, 🎜ici🎜 : 🎜
{{ $image := "" }} {{ if reflect.IsMap (index .Params.images 0) }} {{ $image = .Resources.GetMatch (printf "**%s" (index .Params.images 0).image) }} {{ else }} {{ $image = .Resources.GetMatch (printf "**%s" (index .Params.images 0)) }} {{ end }}
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!