我的控制器中有一个简单的数组用于测试目的$this->view_data['test'] = array(1,2,3,4,5,6,7,8,9,10);
我想使用Smarty3输出数组,以显示一个col中的前半部分和下一个col中的后半部分。
<div class="col-md-6">
<!-- first half -->
{foreach $test as $t}
{$t}
{/foreach}
</div>
<div class="col-md-6">
<!-- second half -->
{foreach $test as $t}
{$t}
{/foreach}
</div>
答案 0 :(得分:0)
您可以创建和使用额外的变量来存储数组长度除以2.在smarty 3.1中测试
{{assign var="cnt" value=$test|@count}}
{{math equation="ceil(cnt/2)" cnt=$test|@count assign=dv}}
<div class="col-md-6">
{{section name=i loop=$test}}
{{$test[i]}}
{{if $smarty.section.i.iteration % $dv == 0 AND $smarty.section.i.iteration-1 < $cnt}}
</div><div class="col-md-6">
{{/if}}
{{/section}}
</div>