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