当前位置:Gxlcms > PHP教程 > smarty怎么给这种布局赋值谢谢

smarty怎么给这种布局赋值谢谢

时间:2021-07-01 10:21:17 帮助过:7人阅读

本帖最后由 u011682370 于 2013-09-23 13:36:24 编辑

smarty 布局 php



















这种一个大图,然后四个小图,四个小图,一个大图,这样循环的,该如何赋值?


回复讨论(解决方案)

求大神帮帮我!谢谢了

$ar=array(
'big1'=array('scr'=>....),
'small'=array(............),
'big2'=array('scr'=>....),
)

可以这样定义吧

$ar=array(
'big1'=array('scr'=>....),
'small'=array(............),
'big2'=array('scr'=>....),
)

可以这样定义吧
不是很懂,我是新手,可以详细解释一下吗?

$ar=array(
'big1'=array('scr'=>....), //输出大图
'small'=array(............), //输出小图
'big2'=array('scr'=>....), //输出大图
)

当然,我这是一例,还有很多方法,你觉得怎样方便就怎样来。

smarty 做一个foreach 循环 出数组 数组根据你需要来组建就可以咯

看下smarty的 assgin

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

那么前台页面代码可以这样写:

<{foreach from=$data item=it key=ke}>
<{if $smarty.foreach.item.iteration % 2 == 1}>

<{foreach from=$it.small item=s_it key=s_ke}>

<{/foreach}>


<{else}>


<{foreach from=$it.small item=s_it key=s_ke}>

<{/foreach}>

<{/if}>
<{/foreach}>


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

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

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

那么前台页面代码可以这样写:

<{foreach from=$data item=it key=ke}>
<{if $smarty.foreach.item.iteration % 2 == 1}>

<{foreach from=$it.small item=s_it key=s_ke}>

<{/foreach}>


<{else}>


<{foreach from=$it.small item=s_it key=s_ke}>

<{/foreach}>

<{/if}>
<{/foreach}>


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

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

修正: 是对2取余


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

那么前台页面代码可以这样写:

<{foreach from=$data item=it key=ke}>
<{if $smarty.foreach.item.iteration % 2 == 1}>

<{foreach from=$it.small item=s_it key=s_ke}>

<{/foreach}>


<{else}>


<{foreach from=$it.small item=s_it key=s_ke}>

<{/foreach}>

<{/if}>
<{/foreach}>


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

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

修正: 是对2取余
虽然不太一样,但给了我了解决办法,谢谢,

人气教程排行