服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - PHP教程 - PHP简单实现无限级分类的方法

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

2021-01-18 14:05潇湘竹叶 PHP教程

这篇文章主要介绍了PHP简单实现无限级分类的方法,涉及sql语句及递归调用的相关技巧,需要的朋友可以参考下

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

数据库结构:

?
1
2
3
4
5
6
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文件:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
$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程序设计有所帮助。

延伸 · 阅读

精彩推荐