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 相关文章推荐
PHP模板引擎SMARTY
Oct 09 PHP
php中突破基于HTTP_REFERER的防盗链措施(stream_context_create)
Mar 29 PHP
PHP学习之数组的定义和填充
Apr 17 PHP
PHP pathinfo()获得文件的路径、名称等信息说明
Sep 13 PHP
php 操作符与控制结构
Mar 07 PHP
php中sql注入漏洞示例 sql注入漏洞修复
Jan 24 PHP
php使用ffmpeg获取视频信息并截图的实现方法
May 03 PHP
php中static和const关键字用法分析
Dec 07 PHP
PHP如何读取由JavaScript设置的Cookie
Mar 22 PHP
PHP 无限级分类
May 04 PHP
LaravelS通过Swoole加速Laravel/Lumen详解
Mar 02 PHP
thinkPHP5.1框架使用SemanticUI实现分页功能示例
Aug 03 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
php mssql 日期出现中文字符的解决方法
2009/03/10 PHP
php中将一个对象保存到Session中的方法
2015/03/13 PHP
Mac系统下安装PHP Xdebug
2018/03/30 PHP
PhpStorm2020.1 安装 debug - Postman 调用的详细教程
2020/08/17 PHP
jquery.validate使用攻略 第三部
2010/07/01 Javascript
jQuery oLoader实现的加载图片和页面效果
2015/03/14 Javascript
整理Javascript基础语法学习笔记
2015/11/29 Javascript
jQuery使用getJSON方法获取json数据完整示例
2016/09/13 Javascript
js实现PC端和移动端刮卡效果
2020/03/27 Javascript
Angular2使用jQuery的方法教程
2017/05/28 jQuery
基于vue2实现上拉加载功能
2017/11/28 Javascript
基于datepicker定义自己的angular时间组件的示例
2018/03/14 Javascript
layui lay-verify form表单自定义验证规则详解
2019/09/18 Javascript
[04:50]DOTA2亚洲邀请赛小组赛第四日 TOP10精彩集锦
2015/02/02 DOTA
为python设置socket代理的方法
2015/01/14 Python
Python下Fabric的简单部署方法
2015/07/14 Python
使用python在本地电脑上快速处理数据
2017/06/22 Python
python实现八大排序算法(1)
2017/09/14 Python
Pandas探索之高性能函数eval和query解析
2017/10/28 Python
python中matplotlib的颜色及线条控制的示例
2018/03/16 Python
python for循环输入一个矩阵的实例
2018/11/14 Python
Python 移动光标位置的方法
2019/01/20 Python
python保存log日志,实现用log日志画图
2019/12/24 Python
python如何把字符串类型list转换成list
2020/02/18 Python
logging level级别介绍
2020/02/21 Python
兰芝美国网上商城:购买LANEIGE睡眠面膜等
2017/06/30 全球购物
英国最大的自有市场,比亚马逊便宜:Flubit
2019/03/19 全球购物
东南亚排名第一的服务市场:kaodim
2019/03/28 全球购物
关键字final的用法
2013/10/02 面试题
函授本科毕业自我鉴定
2013/10/09 职场文书
保密普查工作实施方案
2014/02/25 职场文书
美术社团活动总结
2014/06/27 职场文书
绿色环保家庭事迹材料
2014/08/31 职场文书
党员批评与自我批评范文
2014/09/23 职场文书
《青山不老》教学反思
2016/02/22 职场文书
SQL实战演练之网上商城数据库商品类别数据操作
2021/10/24 MySQL