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 相关文章推荐
如何使用脚本模仿登陆过程
Nov 22 PHP
php 计划任务 检测用户连接状态
Mar 29 PHP
PHP在网页中动态生成PDF文件详细教程
Jul 05 PHP
destoon实现首页显示供应、企业、资讯条数的方法
Jul 15 PHP
PHP+MySQL修改记录的方法
Jan 21 PHP
php等比例缩放图片及剪切图片代码分享
Feb 13 PHP
php session 写入数据库
Feb 13 PHP
php仿微信红包分配算法的实现方法
May 13 PHP
php gd等比例缩放压缩图片函数
Jun 12 PHP
PHP结合Vue实现滚动底部加载效果
Dec 17 PHP
PHP使用pdo实现事务处理操作示例
Sep 05 PHP
解决thinkphp5未定义变量会抛出异常,页面错误,请稍后再试的问题
Oct 16 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实现快钱支付功能(涉及到接口)
2013/07/01 PHP
php禁用函数设置及查看方法详解
2016/07/25 PHP
详解PHP用substr函数截取字符串中的某部分
2016/12/03 PHP
JavaScript CSS 修改学习第四章 透明度设置
2010/02/19 Javascript
web页面数据展示新想法(json)
2010/06/08 Javascript
详谈nodejs异步编程
2014/12/04 NodeJs
前端微信支付js代码
2016/07/25 Javascript
angular实现表单验证及提交功能
2017/02/01 Javascript
vue.js利用Object.defineProperty实现双向绑定
2017/03/09 Javascript
jQuery插件HighCharts绘制的2D堆柱状图效果示例【附demo源码下载】
2017/03/14 Javascript
浅谈Vue.nextTick 的实现方法
2017/10/25 Javascript
AngularJS基于MVC的复杂操作实例讲解
2017/12/31 Javascript
JS实现json对象数组按对象属性排序操作示例
2018/05/18 Javascript
Vue利用History记录上一页面的数据方法实例
2018/11/02 Javascript
如何利用ES6进行Promise封装总结
2019/02/11 Javascript
基于element-ui封装可搜索的懒加载tree组件的实现
2020/05/22 Javascript
Python 的描述符 descriptor详解
2016/02/27 Python
Python3 伪装浏览器的方法示例
2017/11/23 Python
Python实现调度算法代码详解
2017/12/01 Python
Python学习笔记之视频人脸检测识别实例教程
2019/03/06 Python
python+pyqt5实现图片批量缩放工具
2019/03/18 Python
python基于gevent实现并发下载器代码实例
2019/11/01 Python
详解opencv中画圆circle函数和椭圆ellipse函数
2019/12/27 Python
TENSORFLOW变量作用域(VARIABLE SCOPE)
2020/01/10 Python
Python re正则表达式元字符分组()用法分享
2020/02/10 Python
Python json转字典字符方法实例解析
2020/04/13 Python
Python+MySQL随机试卷及答案生成程序的示例代码
2021/02/01 Python
HTML5 video视频字幕的使用和制作方法
2018/05/03 HTML / CSS
美国诺德斯特龙百货官网:Nordstrom
2016/08/23 全球购物
Oracle的内存结构(Memory structures)
2015/06/10 面试题
药剂专业学生求职信范文
2013/12/28 职场文书
中学生差生评语
2014/01/30 职场文书
中学教师请假制度
2014/02/03 职场文书
《小小雨点》教学反思
2014/02/18 职场文书
建筑横幅标语
2014/10/09 职场文书
Vue2.0搭建脚手架
2022/03/13 Vue.js