php smarty 二级分类代码和模版循环例子


Posted in PHP onJune 01, 2011

二级分类的数据表结构如下:

php smarty 二级分类代码和模版循环例子

PHP代码如下 
/** 
@ 文章分类 含二级分类 
@ param int $rootnum -- 一级分类数量 
@ param int $childnum -- 二级分类数量 
@ 返回值 array 
@ date 2011.2.24 
*/ 
function temp_articletreecate($rootnum,$childnum){ 
if(!isnumber($rootnum)){ 
$rootnum = 10; 
} 
if(!isnumber($childnum)){ 
$childnum = 10; 
} 
$category = array(); 
$parent_sql = "SELECT cateid,catename FROM ".TABLE_PREFIX."articlecate WHERE parentid=0 AND depth=0 AND flag=1 ORDER BY orders ASC"; 
if(intval($rootnum)>0){ 
$parent_sql.=" LIMIT $rootnum"; 
} 
$parent_cate = $GLOBALS['db']->getall($parent_sql); 
foreach($parent_cate as $parent_key => $parent_value){ 
//子类数组名为 childcategory 根据情况自定义名称 
$category[] = array('cateid'=>$parent_value['cateid'],'catename'=>$parent_value['catename'],'childcategory'=>array()); 
//读取子类 
$child_sql = "SELECT cateid,catename FROM ".TABLE_PREFIX."articlecate WHERE parentid=".$parent_value['cateid']." AND flag=1 ORDER BY orders ASC"; 
if(intval($childnum)>0){ 
$child_sql.=" LIMIT $childnum"; 
} 
$child_cate = $GLOBALS['db']->getall($child_sql); 
foreach($child_cate as $child_key => $child_value){ 
$category[count($category)-1]['childcategory'][] = array('cateid'=>$child_value['cateid'],'catename'=>$child_value['catename']); 
} 
} 
return $category; 
}

PHP页面调用分类,如index.php
$goodscatetree = array();
$goodscatetree = temp_goodstreecate(4,0); //调用分类函数(含二级分类)4--表示一级分类只显示4个,0--表示二级分类不限数量
$tpl>assign("goodscatetree",$goodscatetree); //执行smarty引擎
$tpl->display->(index.tpl); //输出smarty模版页面

TPL模版页面输出分类,如index.tpl页面
{section name=p loop=$goodscatetree}
一级分类:{$goodscatetree[p].catename}
{section name=c loop=$goodscatetree[p].childcategory}
二级分类:{$goodscatetree[p].childcategory[c].catename}
{/section}
{/section}

PHP 相关文章推荐
E路文章系统PHP
Dec 11 PHP
PHP 内存缓存加速功能memcached安装与用法
Sep 03 PHP
解析php扩展php_curl.dll不加载的解决方法
Jun 26 PHP
PHP用身份证号获取星座和生肖的方法
Nov 07 PHP
php获取表单中多个同名input元素的值
Mar 20 PHP
PHP中soap的用法实例
Oct 24 PHP
php根据日期或时间戳获取星座信息和生肖等信息
Oct 20 PHP
PHP实现递归无限级分类
Oct 22 PHP
PHP模拟post提交数据方法汇总
Feb 16 PHP
php操作access数据库的方法详解
Feb 22 PHP
PHP获取二叉树镜像的方法
Jan 17 PHP
PHP封装的page分页类定义与用法完整示例
Dec 24 PHP
PHP 八种基本的数据类型小结
Jun 01 #PHP
Apache2中实现多网站域名绑定的实现方法
Jun 01 #PHP
php自动获取字符串编码函数mb_detect_encoding
May 31 #PHP
比较时间段一与时间段二是否有交集的php函数
May 31 #PHP
实用PHP会员权限控制实现原理分析
May 29 #PHP
允许phpmyadmin空密码登录的配置方法
May 29 #PHP
php统计文件大小,以GB、MB、KB、B输出
May 29 #PHP
You might like
收音机怀古---春雷3P7图片欣赏
2021/03/02 无线电
谈谈新手如何学习PHP
2006/12/23 PHP
献给php初学者(入门学习经验谈)
2010/10/12 PHP
php生成数组的使用示例 php全组合算法
2014/01/16 PHP
phpphp图片采集后按原路径保存图片示例
2014/02/18 PHP
使用ThinkPHP+Uploadify实现图片上传功能
2014/06/26 PHP
ThinkPHP发送邮件示例代码
2016/10/08 PHP
php array_map()函数实例用法
2021/03/03 PHP
javascript创建和存储cookie示例
2014/01/07 Javascript
JS检测输入字符是否包含非法字符的示例代码
2014/02/11 Javascript
jQuery+ajax实现鼠标单击修改内容的方法
2014/06/27 Javascript
jQuery实现鼠标点击弹出渐变层的方法
2015/07/09 Javascript
jQuery获取URL请求参数的方法
2015/07/18 Javascript
jquery性能优化高级技巧
2015/08/24 Javascript
jQuery实现弹幕效果
2017/02/17 Javascript
JS获取当前地理位置的方法
2017/10/25 Javascript
Vue实现星级评价效果实例详解
2019/12/30 Javascript
js实现验证码干扰(动态)
2021/02/23 Javascript
深入理解python中的闭包和装饰器
2016/06/12 Python
Python数据结构与算法之图的广度优先与深度优先搜索算法示例
2017/12/14 Python
python实现换位加密算法的示例
2018/10/14 Python
python 批量修改 labelImg 生成的xml文件的方法
2019/09/09 Python
wxpython+pymysql实现用户登陆功能
2019/11/19 Python
python中requests模拟登录的三种方式(携带cookie/session进行请求网站)
2020/11/17 Python
Kate Spade美国官网:纽约新兴时尚品牌,以包包闻名于世
2017/11/09 全球购物
在线学习西班牙语、法语或其他语言:Babbel.com
2018/02/07 全球购物
威尔逊皮革:Wilsons Leather
2018/12/07 全球购物
美国温暖商店:The Warming Store
2018/12/15 全球购物
斯图尔特·韦茨曼鞋加拿大官网:Stuart Weitzman加拿大
2019/10/13 全球购物
都柏林通行卡/城市通票:The Dublin Pass
2020/02/16 全球购物
Linux机考试题
2015/10/16 面试题
会计实习期自我鉴定
2013/10/06 职场文书
导游词之上饶龟峰
2019/10/25 职场文书
写作之关于描写老人的好段摘抄
2019/11/14 职场文书
python如何在word中存储本地图片
2021/04/07 Python
win11怎么用快捷键锁屏? windows11锁屏的几种方法
2021/11/21 数码科技