读书人

smarty如何给这种布局赋值多谢

发布时间: 2013-09-28 10:01:20 作者: rapoo

smarty怎么给这种布局赋值谢谢
本帖最后由 u011682370 于 2013-09-23 13:36:24 编辑 <div class="exa_r">
<div class="exa_eve"><img src="" /></div>
<div class="exa_eve">
<div class="exa_small"><img src="" /></div>
<div class="exa_small"><img src="" /></div>
<div class="exa_small"><img src="" /></div>
<div class="exa_small"><img src="" /></div>
</div>
<div class="exa_eve">
<div class="exa_small"><a href=""><img src="" /></div>
<div class="exa_small"><a href=""><img src="" /></div>
<div class="exa_small"><a href=""><img src=""/></div>
<div class="exa_small"><a href=""><img src="" /></div>
</div>
<div class="exa_eve"><a href=""><img src="" /></a></div>

</div>

这种一个大图,然后四个小图,四个小图,一个大图,这样循环的,该如何赋值? smarty 布局 php
[解决办法]

引用:
如果你循环的数组是:
$data=array(
0=>array('big'=>array('src'=>'...', ...),'small'=>array('src'=>'...', ...)),
1=>array('big'=>array('src'=>'...', ...),'small'=>array('src'=>'...', ...)),
);

那么前台页面代码可以这样写:
<div class="exa_r">
<{foreach from=$data item=it key=ke}>
<{if $smarty.foreach.item.iteration % 2 == 1}>
<div class="exa_eve">
<{foreach from=$it.small item=s_it key=s_ke}>
<div class="exa_small"><a href=""><img src="<{$s_it.src}>" /></div>
<{/foreach}>
</div>
<div class="exa_eve"><a href=""><img src="<{$it.big.src}>" /></a></div>
<{else}>
<div class="exa_eve"><img src="<{$it.big.src}>" /></div>
<div class="exa_eve">
<{foreach from=$it.small item=s_it key=s_ke}>
<div class="exa_small"><a href=""><img src="<{$s_it.src}>" /></div>
<{/foreach}>
</div>
<{/if}>
<{/foreach}>
</div>

注释:
if $smarty.foreach.item.iteration % 2 == 1
这个条件是判断当前迭代对2取整是否等于1,如果是,那么就显示四小图一大图的布局,否则就显示一大图四小图的布局。

不知道我的理解是不是你想问的,希望能帮到你。


修正:是对2取余

读书人网 >PHP

热点推荐