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

yipeiwu_com5年前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);
?>

相关文章

搭建Vim为自定义的PHP开发工具的一些技巧

搭建Vim为自定义的PHP开发工具的一些技巧

虽然 vim 本质上只是一个编辑器。但只要配合一些适当的插件, vim 也能变成一个全功能的 IDE 。笔者使用 vim 已经有挺长一段时间了,经过反复的试验,配置了一个高效的 PHP...

PHP socket 模拟POST 请求实例代码

我们用到最多的模拟POST请求几乎都是使用php curl来实现了,没考虑到PHP socket也可以实现,今天看到朋友写了一文章,下面我来给大家分享一下PHP socket模拟POST...

详解PHP实现异步调用的4种方法

浏览器和服务器之间是通过 HTTP 协议进行连接通讯的。这是一种基于请求和响应模型的协议。浏览器通过 URL 向服务器发起请求,Web 服务器接收到请求,执行一段程序,然后做出响应,发送...

php设计模式 Command(命令模式)

复制代码 代码如下: <?php /** * 命令模式 * * 将一个请求封装为一个对象从而使你可用不同的请求对客户进行参数化,对请求排除或记录请求日志,以及支持可取消的操作 */...

PHP 命令行工具 shell_exec, exec, passthru, system详细使用介绍

PHP 命令行工具 shell_exec, exec, passthru, system详细使用介绍

所有这些命令都衍生一个子进程,用于运行您指定的命令或脚本,并且每个子进程会在命令输出写到标准输出 (stdout) 时捕捉它们。 shell_exec() shell_exec() 命令...