本文实例讲述了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程序设计有所帮助。