Smarty assign array - Wie String und Variable zusammenfügen?

1 Antwort

Ich würde das, wenn irgendwie möglich, immer direkt in PHP machen und dann nur das fertige Array an Smarty übergeben.

Grundsätzlich sollte folgendes aber funktionieren:

{$var = ['foo' => 'bar', 'blubb' => [1, 2, 3]]}

oder auch 

{$var.foo = 'bar'}

Was genau funktioniert bei deinem Code denn nicht? Kommt eine Fehlermeldung? Denn vom Prinzip her müsste das stimmen, man kann Strings und Variablen einfach nach folgendem Schema zusammenfügen:

{$varC="`$varA`blubb`$varB`"}

Wenn es nur um die "/" um die $url herum geht (kA ob man die vielleicht escapen muss, hab sowas noch nie versucht), die würde ich einfach nachher bei der Ausgabe einfügen (wenn es wie gesagt nicht sowieso möglich wäre, das ganze direkt in PHP "zusammenzubauen").

// Edit: Was ich oben benutzt habe ist übrigens einfach nur die "Kurzform" von "assign", die Variante mit assign sollte also genauso funktionieren, also da liegt der Fehler nicht.

Evergreen89 
Fragesteller
 18.12.2016, 16:58

Korrekt. Es geht letztendlich nur um die "/"

Eine Fehlermeldung wird nicht ausgegeben. Nur der Variablenname wird ausgegeben anstatt den Wert.

Hier habe ich nun aber die Lösung:

{assign var=breadcrumb value=['0'=>['title'=>$lang.brand.title.2, 'url'=>"/{$lang.main.url.6}/"]]}
0