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+MySQL的聊天室设计
Oct 09 PHP
PHP 得到根目录的 __FILE__ 常量
Jul 23 PHP
基于PHP输出缓存(output_buffering)的深入理解
Jun 13 PHP
php实现监听事件
Nov 06 PHP
PHP中的多行字符串传递给JavaScript的两种方法
Jun 19 PHP
解密ThinkPHP3.1.2版本之独立分组功能应用
Jun 19 PHP
PHP获取windows登录用户名的方法
Jun 24 PHP
php判断类是否存在函数class_exists用法分析
Nov 14 PHP
thinkphp模板继承实例简述
Nov 26 PHP
PHP内核探索:哈希表碰撞攻击原理
Jul 31 PHP
PHPExcel简单读取excel文件示例
May 26 PHP
解决laravel中日志权限莫名变成了root的问题
Oct 17 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检测字符串是否为UTF8编码的常用方法
2014/11/21 PHP
自己写的php curl库实现整站克隆功能
2015/02/12 PHP
浅谈PHP检查数组中是否存在某个值 in_array 函数
2016/06/13 PHP
微信自定义菜单的创建/查询/取消php示例代码
2016/08/05 PHP
PHP让网站移动访问更加友好方法
2019/02/14 PHP
HTML中事件触发列表与解说
2007/07/09 Javascript
js中的eventType事件及其浏览器支持性介绍
2013/11/29 Javascript
用JavaScript实现类似于ListBox功能示例代码
2014/03/09 Javascript
jQuery中ajax的load()方法用法实例
2014/12/26 Javascript
js中常用的Math方法总结
2017/01/12 Javascript
JavaScript中利用for循环遍历数组
2017/01/15 Javascript
JavaScript简单拖拽效果(1)
2017/05/17 Javascript
JavaScript基于扩展String实现替换字符串中index处字符的方法
2017/06/13 Javascript
ES6学习笔记之map、set与数组、对象的对比
2018/03/01 Javascript
JS中promise化微信小程序api
2018/04/12 Javascript
JavaScript简单实现的仿微博留言功能示例
2019/01/17 Javascript
three.js 利用uv和ThreeBSP制作一个快递柜功能
2020/08/18 Javascript
JavaScript读取本地文件常用方法流程解析
2020/10/12 Javascript
vue-axios同时请求多个接口 等所有接口全部加载完成再处理操作
2020/11/09 Javascript
详解Vue的异步更新实现原理
2020/12/22 Vue.js
[44:40]2018DOTA2亚洲邀请赛3月30日 小组赛A组Liquid VS OG
2018/03/31 DOTA
[05:49]DOTA2-DPC中国联赛 正赛 Elephant vs LBZS 选手采访
2021/03/11 DOTA
Python语言描述随机梯度下降法
2018/01/04 Python
python导出hive数据表的schema实例代码
2018/01/22 Python
python操作redis方法总结
2018/06/06 Python
Python发送邮件测试报告操作实例详解
2018/12/08 Python
详解Python函数式编程—高阶函数
2019/03/29 Python
flask 使用 flask_apscheduler 做定时循环任务的实现
2019/12/10 Python
pymysql 插入数据 转义处理方式
2020/03/02 Python
质检部岗位职责
2013/11/11 职场文书
小学生中国梦演讲稿
2014/04/23 职场文书
委托培训协议书
2014/11/17 职场文书
学术会议通知范文
2015/04/15 职场文书
交通事故赔偿起诉书
2015/05/20 职场文书
入团申请书格式
2019/06/20 职场文书
Mysql数据库索引面试题(程序员基础技能)
2021/05/31 MySQL