Ich werde immer mal wieder (wie gerade vor 10 Minuten) gefragt, ob man bei den Smarty-Variablen-Modifikatoren mehrere Parameter übergeben kann.
Natürlich funktioniert das:
PHP-Datei:
<?php
$smarty = new Smarty;
$smarty->assign('text', 'smarty is easy');
$smarty->display('index.tpl');
?>
Smarty Modifier-Datei (modifier.test.php):
<?php
function smarty_modifier_test($string, $t1, $t2, $t3) {
return $string."-".$t1."-".$t2."-".$t3;
}
?>
Smarty Template-Datei (index.tpl)
{$text|test:3:2:1}
Dies ergibt folgenden Output:
smarty is easy-3-2-1
Man kann also eine beliebige Anzahl an Parametern – durch Doppelpunkte voneinander getrennt – übergeben.