2011-03-29 8 views
0

Je veux utiliser string_format pour formater la sortie lors de la génération d'options html avec html_options.Filtre de sortie html_options dans Smarty

Par exemple, je suis en train d'obtenir des options avec un zéro:

<select> 
{$options=range(1,12)} 
{html_options values=$options output=$options|string_format:'%02d'} 
{/select} 

Cela donne 01 comme prévu pour la première option, mais les étiquettes vierges pour le reste. Cela devrait fonctionner sur la base de l'exemple sur this page (recherche de «tronquer» sur cette page), donc je ne suis pas sûr de ce que je fais mal.

Répondre

2

D'une certaine façon la méthode Smarty string_format ne fonctionnera pas sur un tableau. Ce que vous pouvez faire cependant est de créer un tableau associatif préalable:

{section name=foo start=1 loop=13} 
    {$options[$smarty.section.foo.index]=$smarty.section.foo.index|string_format:'%02d'} 
{/section} 

Et utiliser simly comme options au lieu de values et output:

<select> 
    {html_options options=$options} 
</select>