2016-11-15 6 views
0

Meine Twig-Vorlage empfängt ein Array, das einen Pfad zu einer Bilddatei enthält. Es sieht wie folgt aus:Zweig: Schlüssel des Unterarrays ohne Schleife erhalten?

array:1 [ 
    "path/to/images/images.jpg" => array:4 [ 
    "name" => "image.jpg" 
    "type" => "image/jpeg" 
    "size" => 77789 
    "path" => "path/to/images/image.jpg" 
    ] 
] 

Sie können sehen, dass der Schlüssel des Sub-Array dynamisch an den tatsächlichen Pfad der Datei festgelegt wird. Ich kann auf dieses Array nicht zugreifen, weil ich diesen Schlüssel vorher nicht kenne. Ich weiß, dass ich das Eltern-Array durchlaufen kann, um irgendwelche Werte aus dem Subarray zu bekommen, aber das scheint chaotisch zu sein. Meine Frage ist also: Gibt es irgendeinen Weg, in Twig den Schlüssel des Subarrays (den Pfad) ohne Schleifen zu extrahieren?

Antwort

0

Ich bin mir nicht sicher, ob der Kontext die Variable Umgebung, die Sie geteilt haben, aber ...

eine Variable, wie die in Ihrer Frage gegeben, würde ich den Pfad zugreifen, indem Sie die first Verwendung Filter im Zweig. Dieses

geht davon aus, dass Ihre Variable mit dem dynamisch erzeugten Schlüssel wird immer in der gleichen, array-inside-a-one-item-Array-Form zurückgeführt werden:

{% set img = var | first %} 
<img src="{{ img.path }}" /> 
// <img src="path/to/images/image.jpg" /> 
+0

Nizza. Aber was beschäftigt Sie mit dem Kontext der Variablen? –

+0

Bedenken im dritten Satz: "Dies setzt voraus, dass Ihre Variable mit dem dynamisch generierten Schlüssel immer in der gleichen Array-in-One-Item-Array-Form zurückgegeben wird" ... um zu paraphrasieren - können Sie auf die Variable, die an die Vorlage weitergegeben wird, immer in dieser Form? –

Verwandte Themen