php 浅析smarty中section嵌套循环的简单示例

PHP smarty中section嵌套循环感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编两巴掌来看看吧!
<select name=parentId id=parentId>
<option value=0>根分类</option>
<{section name=big loop=$big}>
<option value=<{$big[big].id}>><{$big[big].type}></option>
<{section name=small loop=$big[big].small}>
<option value=<{$big[big].small[small].id}>>-<{$big[big].small[small].type}></option>
<{/section}> <{/section}>
</select>
$sqla=select * from .$tabext.navigation where parentId=0;
$allRecord=$db->getAllRecord($sqla);
$classNameArray=array();
foreach($allRecord as $v){
$sqls=select * from .$tabext.navigation where parentId=.$v['id'];
$allRecords=$db->getAllRecord($sqls); $childNameArray=array();
foreach($allRecords as $s){
array_push($childNameArray,$s);
}
$v['small']=$childNameArray;
array_push($classNameArray,$v);
}
$smarty->assign(big,$classNameArray);

以下是根据没有用smarty程序风格的写法所写:

<select name=ntype id=ntype>
<{section name=bigType loop=$bigType}>
<option value=a><{$bigType[bigType].type}></option>
<{section name=smallType loop=smallType}>
<option value=b><{$smallType[smallType].type}></option>
<{/section}>
<{/section}>
</select>
+++++++++++++++++++++++++++++
$sqla=select * from .$tabext.navigation where parentId=0;
$allRecord=$db->getAllRecord($sqla);
for($i=0;$i<count($allRecord);$i++){
$big[]=array(id=>$allRecord[$i]['id'],type=>$allRecord[$i]['type']);
$sqlb=select * from .$tabext.navigation where parentId=.$allRecord[$i]['id'];
$allRecords=$db->getAllRecord($sqlb);
$countallRecords=count($allRecords);
#debug($allRecords); if($countallRecords!=0){
for($j=0;$j<countallRecords;$j++){
$small[]=array(ids=>$allRecords[$j]['id'],types=>$allRecords[$j]['type']);
$smarty->assign('small',$small);
}
$smarty->assign('big',$big);
}
}
/*** 来自编程之家 jb51.cc(jb51.cc) ***/

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...