PHP-Editor Zimo möchte Ihnen eine Frage zur Bildanzeige stellen: Wenn das Bild ein Element eines Objektarrays ist, wie wird das als Seitenressource gespeicherte Bild angezeigt? Dies ist ein häufiges Problem, insbesondere in Szenarien, in denen es um das Hochladen und Anzeigen von Bildern geht. In PHP können wir Bilder mithilfe des -Tags von HTML anzeigen. In Kombination mit den Schleifen- und Ausgabeanweisungen von PHP können wir das Objektarray problemlos durchlaufen und das Bild auf der Seite anzeigen. Nachfolgend finden Sie einen einfachen Beispielcode, der Ihnen hilft, die Implementierung dieser Funktion zu verstehen. Zunächst gehen wir davon aus, dass es bereits ein Objektarray $images gibt, das Informationen über mehrere Bilder speichert, einschließlich Pfad und Name des Bildes. Als nächstes können wir eine foreach-Schleife verwenden, um das Array zu durchlaufen, die echo-Anweisung in der Schleife verwenden, um das -Tag auszugeben, und das src-Attribut auf den Pfad des Bildes setzen. Auf diese Weise werden beim Laden der Seite alle Bilder automatisch angezeigt. Ich hoffe, dass dieses einfache Beispiel allen bei der Lösung ähnlicher Probleme helfen kann. Wenn Sie weitere Fragen haben, hinterlassen Sie bitte eine Nachricht zur Diskussion.
Das Bild auf meiner Startseite wird so gespeichert:
images: - image: image_1.jpg caption: "image 1 caption" - image: image_2.jpg caption: "image 2 caption"
Ich möchte nur das erste zeigen, daher verwende ich Folgendes:
{{ $image := .resources.getmatch (printf "**%s" (index .params.images 0).image) }}
Seltsamerweise funktioniert das nur, wenn ich den .image
-Teil hinzufüge, wenn es auf einem lokalen Hugo-Server ausgeführt wird. Sobald ich anhalte und erneut starte, kann die Website nicht neu erstellt werden und es erscheint die folgende Fehlermeldung:
... 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
Ich möchte nur auf images[0].image
zugreifen können. Wie kann ich das machen? images[0].image
。我怎样才能做到这一点?
事实证明,我还有一些其他内容类型,其中前面的 images
Problemumgehung
images
immer noch ein einfaches Array und kein Array von Objekten ist. Dies führte bei mir zu einem Build-Fehler. Um dieses Problem zu lösen, habe ich die folgenden Vorschläge verwendet, 🎜hier🎜: 🎜
{{ $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 }}
Das obige ist der detaillierte Inhalt vonWie zeige ich ein als Seitenressource gespeichertes Bild an, wenn das Bild ein Element eines Arrays von Objekten ist?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!