index.dwt
recomment_best.lbi
<code> <!---ecms {foreach name=goods_list from=$best_goods item=goods}--> <div id="more_element_1" class="product flex_in single_item"> <div class="pro-inner"> <div class="proImg-wrap"> 又是什么意思?? 这样的写法,属于什么语法??是 smarty ? 求解决??谢谢 </code>
回复内容:
index.dwt
recomment_best.lbi
<code> <!---ecms {foreach name=goods_list from=$best_goods item=goods}--> <div id="more_element_1" class="product flex_in single_item"> <div class="pro-inner"> <div class="proImg-wrap"> 又是什么意思?? 这样的写法,属于什么语法??是 smarty ? 求解决??谢谢 </code>
from就是你后台assign过来的值哟,比如说,你后来4源gaodaimacom搞#代%码*网搞代gaodaima码
台的controller里面的action中
$smarty->assign(‘best_goods’,$best_goods);
辣么,你在模板文件接收from的值必须是$best_goods
{foreach name=goods_list from=$best_goods item=goods}
接下来,你就可以在模板中使用$goods变量了,通过这样来使用{$goods},$goods现在就是一位数组,你可以通过.操作,像这样{$goods.url},或者通过数组方式访问,像这样{$goods[‘url’]},name属性好像不是必须的,你试下
你这个是smarty2.0 模板引擎的foreach循环语法,最终会被模板引擎编译成php代码,然后执行!
先看官方文档说明:
name:smarty模板引擎,foreach对象本身的名称,方便后续操作,比如进行序号判断之类的
<code> {if $smarty.foreach.goods_list.index % 5 == 0} <tr><th>Title</th></tr> {/if}</code>
from:你这个例子里相当于是一个商品列表数组
item:你这个例子里相当于是一个商品
{foreach name=goods_list from=$best_goods item=goods}
$best_list是一个数组,这句的意思就是循环将best_list这个数组的元素赋值给goods来使用