php 无极分类(递归)实现代码

yipeiwu_com6年前PHP代码库

复制代码 代码如下:

<?php
$conn=mysql_connect("localhost","root","myoa888");
mysql_select_db("lost63",$conn) or die("select db error");
$sql[]="Create TABLE `lost63`.`dd_book_class` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`classname` VARCHAR( 50 ) NOT NULL ,
`classid` INT NOT NULL
)";
$sql[]="insert `dd_book_class` (classname,classid) values ('小说',0)";
$sql[]="insert `dd_book_class` (classname,classid) values ('文艺',0)";
$sql[]="insert `dd_book_class` (classname,classid) values ('青春',0)";
$sql[]="insert `dd_book_class` (classname,classid) values ('励志/成功',0)";
$sql[]="insert `dd_book_class` (classname,classid) values ('少儿',0)";
$sql[]="insert `dd_book_class` (classname,classid) values ('悬疑',1)";
$sql[]="insert `dd_book_class` (classname,classid) values ('言情',1)";
$sql[]="insert `dd_book_class` (classname,classid) values ('职场',1)";
$sql[]="insert `dd_book_class` (classname,classid) values ('文学',2)";
$sql[]="insert `dd_book_class` (classname,classid) values ('科普',5)";
//print_r($sql);
/* -- insert test data -- */
foreach($sql as $value){
mysql_query($value) or die("insert data error");
}

$class_arr=array();
$recordset=mysql_query("select * from `dd_book_class`");
while($row=mysql_fetch_array($recordset)){
$class_arr[]=array($row['id'],$row['classname'],$row['classid']);
}
function classtree($n,$id){
global $class_arr;
$n = str_pad('',$n,'-',STR_PAD_RIGHT);
$n = str_replace("-"," ",$n);
for($i=0;$i<count($class_arr);$i++){
if($class_arr[$i][2]==$id){
echo $n.'┠<a href="?class='.$class_arr[$i][0].'">'.$class_arr[$i]
[1].'</a><br>';
classtree($n+1,$class_arr[$i][0]);
}
}
}
classtree(0,0);
?>

相关文章

php桥接模式应用案例分析

本文实例讲述了php桥接模式应用。分享给大家供大家参考,具体如下: 桥接模式是将抽象部分与它的实现部分分离,使它们都可以独立地变化。 示例: 当一个信息时 根据发送渠道分为:QQ消息、e...

PHP7匿名类用法分析

PHP7匿名类用法分析

本文实例讲述了PHP7匿名类用法。分享给大家供大家参考,具体如下: 匿名类跟匿名函数一样,创建一次性的简单对象 <?php /** * Created by PhpS...

php实现的css文件背景图片下载器代码

本文实例讲述了php实现的css文件背景图片下载器代码。分享给大家供大家参考。具体实现方法如下: 下载css文件里面的背景图片是我们这些盗版份子长期搞的事情,下载个css图片下载器常出现...

php基于自定义函数记录log日志方法

本文实例讲述了php基于自定义函数记录log日志方法。分享给大家供大家参考,具体如下: /** * 记录错误日志 * @param 日志内容 $res */ function...

php通过排列组合实现1到9数字相加都等于20的方法

本文实例讲述了php通过排列组合实现1到9数字相加都等于20的方法。分享给大家供大家参考。具体实现方法如下: <?php set_time_limit(0); /* 函...