我在模板上的foreach后得到了这个结果。但是,如何停止使用相同的值并仅显示一个?
<ul>
{foreach from=$names item=v name=thenames}
<li>{$v.names}/<li>
{/foreach}
</ul>
答案 0 :(得分:0)
如果它是一个简单的key-&gt; value数组,你可以在php文件中使用array_unique来处理数组,然后再发送给smarty。您也可以使用$ names | array_unique
在模板中调用它如果所有重复项都是一个接一个(即a,a,a,b,b,c,c,c),则可以尝试使用变量来存储前一个值,因此它只显示第一个:< / p>
{assign var="previous" value=""}
{foreach from=$names item=v name=thenames}
{if $previous!=$v.names}
<li>{$v.names}/<li>
{/if}
{assign var="previous" value=$v.names}
{/foreach}
如果没有,我建议在php或使用smarty 3预处理数组。