PHP简单实现无限级分类的方法


Posted in PHP onMay 13, 2016

本文实例讲述了PHP简单实现无限级分类的方法。分享给大家供大家参考,具体如下:

数据库结构:

CREATE TABLE IF NOT EXISTS `city` (
 `id` int(11) NOT NULL auto_increment,
 `name` varchar(30) character set utf8 collate utf8_unicode_ci NOT NULL default '0',
 `parentId` int(11) NOT NULL default '0'
 PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=7 ;

php文件:

$db=new DB($Config['host'],$Config['user'],$Config['password'],$Config['port'],$Config['db'],$Config['charset']);
function findCity($table,$id=0,$level=1){
  global $db;
  $findSql="select id,name,parentId from $table where parentId={$id} order by id";
  $findResult=$db->getArray($findSql);
  $num=$db->numRows;
  $logoStr="|";
  for($i=0;$i<$level;$i++){
  $logoStr.="--";
  }
   if($num!=0){
   for($j=0;$j<$num;$j++){
     echo "<option value={$findResult[$j]['id']}>{$logoStr}{$findResult[$j][name]}</option>";
        findCity($table,$findResult[$j]['id'],$level+1);
    }
  }
}
findCity(city);

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP新手上路(五)
Oct 09 PHP
PHP生成随机密码类分享
Jun 25 PHP
从零开始学YII2框架(二)通过 Composer 安装扩展插件
Aug 20 PHP
ThinkPHP 3.2 版本升级了哪些内容
Mar 05 PHP
PHP中file_exists使用中遇到的问题小结
Apr 05 PHP
详解php中空字符串和0之间的关系
Oct 23 PHP
redirect_uri参数错误的解决方法(必看)
Feb 16 PHP
PHP读取、解析eml文件及生成网页的方法示例
Sep 04 PHP
PHP实现的分解质因数操作示例
Aug 01 PHP
ThinkPHP 3.2.3实现加减乘除图片验证码
Dec 05 PHP
PHP递归算法的简单实例
Feb 28 PHP
PHP中SESSION过期设置
Mar 09 PHP
PHP生成可点击刷新的验证码简单示例
May 13 #PHP
关于PHP文件的自动运行方法分析
May 13 #PHP
PHP5.3连接Oracle客户端及PDO_OCI模块的安装方法
May 13 #PHP
PHP中PDO连接数据库中各种DNS设置方法小结
May 13 #PHP
CodeIgniter 完美解决URL含有中文字符串
May 13 #PHP
php htmlentities()函数的定义和用法
May 13 #PHP
LINUX下PHP程序实现WORD文件转化为PDF文件的方法
May 13 #PHP
You might like
解决php 处理 form 表单提交多个 name 属性值相同的 input 标签问题
2017/05/11 PHP
JavaScript高级程序设计(第3版)学习笔记3 js简单数据类型
2012/10/11 Javascript
JS隐藏参数post传值实例
2013/04/18 Javascript
JavaScript中的getDay()方法使用详解
2015/06/09 Javascript
js实现延迟加载的方法
2015/06/24 Javascript
jQuery实现的手机发送验证码倒计时效果代码分享
2015/08/24 Javascript
用Angular实时获取本地Localstorage数据,实现一个模拟后台数据登入的效果
2016/11/09 Javascript
Vue-cropper 图片裁剪的基本原理及思路讲解
2018/04/17 Javascript
JavaScript执行环境及作用域链实例分析
2018/08/01 Javascript
Vue中的v-for指令不起效果的解决方法
2018/09/27 Javascript
uniapp实现可滑动选项卡
2020/10/21 Javascript
Vue使用路由钩子拦截器beforeEach和afterEach监听路由
2020/11/16 Javascript
JavaScript实现图片合成下载的示例
2020/11/19 Javascript
[02:28]DOTA2 2017国际邀请赛小组赛回顾
2017/08/09 DOTA
Python 可爱的大小写
2008/09/06 Python
使用Python脚本操作MongoDB的教程
2015/04/16 Python
探究python中open函数的使用
2016/03/01 Python
python 随机数使用方法,推导以及字符串,双色球小程序实例
2017/09/12 Python
flask + pymysql操作Mysql数据库的实例
2017/11/13 Python
caffe binaryproto 与 npy相互转换的实例讲解
2018/07/09 Python
Python 实现某个功能每隔一段时间被执行一次的功能方法
2018/10/14 Python
softmax及python实现过程解析
2019/09/30 Python
python使用turtle库绘制奥运五环
2020/02/24 Python
实例讲解Python 迭代器与生成器
2020/07/08 Python
美国南部最大的家族百货公司:Belk
2017/01/30 全球购物
美国新兴城市生活方式零售商:VILLA
2017/12/06 全球购物
意大利自行车商店:Cingolani Bike Shop
2019/09/03 全球购物
Linux如何命名文件--使用文件名时应注意
2014/05/29 面试题
2015年小学数学教师个人工作总结
2015/05/25 职场文书
《青山不老》教学反思
2016/02/22 职场文书
Python 如何解决稀疏矩阵运算
2021/05/26 Python
Python爬虫之用Xpath获取关键标签实现自动评论盖楼抽奖(二)
2021/06/07 Python
JavaScript实现优先级队列
2021/12/06 Javascript
Golang 实现WebSockets
2022/04/24 Golang
JavaScript原型链中函数和对象的理解
2022/06/16 Javascript
浅谈为什么我的 z-index 又不生效了
2022/07/15 HTML / CSS