Smarty / 将数字格式化为 5 个字符

Smarty / Format a number in 5 characters

我想用 smarty 将每个变量格式化为特定的字符数字 (5)。

示例:

{foreach from=$products name=product}
{$product.id_product|number_format=-5}
{/foreach}

出于多种原因,我想显示 id,但要显示 5 个字符,如下所示:

1 => 00001
48 => 00048
647 => 00647
4782 => 04782

这可能吗?我尝试了 |number_format 和 |string_format,它不起作用..

你应该这样使用string_format which uses sprintf

{1|string_format:"%05s"}
<br />
{48|string_format:"%05s"}
<br />
{647|string_format:"%05s"}
<br />
{4782|string_format:"%05s"}