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 相关文章推荐
不用数据库的多用户文件自由上传投票系统(3)
Oct 09 PHP
Yii中CGridView关联表搜索排序方法实例详解
Dec 03 PHP
PHP中把错误日志保存在系统日志中(Windows系统)
Jun 23 PHP
php判断linux下程序问题实例
Jul 09 PHP
php微信开发自定义菜单
Aug 27 PHP
php封装的图片(缩略图)处理类完整实例
Oct 19 PHP
PHP HTTP 认证实例详解
Nov 03 PHP
CI(CodeIgniter)框架实现图片上传的方法
Mar 24 PHP
php下的原生ajax请求用法实例分析
Feb 28 PHP
Yii框架应用组件用法实例分析
May 15 PHP
通过PHP实现用户注册后邮箱验证激活
Nov 10 PHP
win10下 php安装seaslog扩展的详细步骤
Dec 04 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
yii用户注册表单验证实例
2015/12/26 PHP
PHP-FPM和Nginx的通信机制详解
2019/02/01 PHP
jQuery对象和DOM对象相互转化
2009/04/24 Javascript
jQuery学习笔记 获取jQuery对象
2012/09/19 Javascript
JavaScript自动设置IFrame高度的小例子
2013/06/08 Javascript
javascript中实现兼容JAVA的hashCode算法代码分享
2020/08/11 Javascript
jquery实现标签上移、下移、置顶
2015/04/26 Javascript
js控制网页前进和后退的方法
2015/06/08 Javascript
javascript解决IE6下hover问题的方法
2015/07/28 Javascript
JS实现双击编辑可修改状态的方法
2015/08/14 Javascript
用move.js库实现百叶窗特效
2017/02/08 Javascript
JavaScript常用截取字符串的三种方式用法区别实例解析
2018/05/15 Javascript
vue移动端html5页面根据屏幕适配的四种解决方法
2018/10/19 Javascript
Layui数据表格跳转到指定页的实现方法
2019/09/05 Javascript
使用p5.js实现动态GIF图片临摹重现
2019/10/23 Javascript
JS数组及对象遍历方法代码汇总
2020/06/16 Javascript
Python字符和字符值(ASCII或Unicode码值)转换方法
2015/05/21 Python
Python实现二叉堆
2016/02/03 Python
基于Django的python验证码(实例讲解)
2017/10/23 Python
win10 64bit下python NLTK安装教程
2018/09/19 Python
关于Numpy中的行向量和列向量详解
2019/11/30 Python
Python序列类型的打包和解包实例
2019/12/21 Python
matlab中二维插值函数interp2的使用详解
2020/04/22 Python
css3+jq创作含苞待放的荷花
2014/02/20 HTML / CSS
美国最大的在线水培用品商店:GrowersHouse.com
2018/08/14 全球购物
社区党务公开实施方案
2014/03/18 职场文书
员工廉洁自律承诺书
2014/05/26 职场文书
2015大学自主招生自荐信范文
2015/03/04 职场文书
房地产财务经理岗位职责
2015/04/08 职场文书
大学毕业谢师宴致辞
2015/07/27 职场文书
幼儿园六一儿童节开幕词
2016/03/04 职场文书
使用python+pygame开发消消乐游戏附完整源码
2021/06/10 Python
php将xml转化对象的实例详解
2021/11/17 PHP
详解ZABBIX监控ESXI主机的问题
2022/06/21 Servers
keepalived + nginx 实现高可用方案
2022/12/24 Servers
python中使用redis用法详解
2022/12/24 Redis