文章是作者原创的一篇关于在php中实现的无限级分类,有需要了解的朋友可以看看。
PHP 8.5.5 PHP 8.5.5 是 PHP 8.5 分支的维护更新版本。该版本延续了“小步快跑”的迭代逻辑,通过深度错误修复、底层性能微调以及安全加固,旨在为开发者提供一个更健壮、更高效的运行环境。该版本严格遵守语义化版本规范,不包含破坏性变更。
下载无限分类就像windows下新建一个文件夹,在新建的文件夹下又可以新建一个文件夹,这样无限循环下去,无限分类也是这样,父类可以分出它子类,子类又可以分出它的子类,这样一直无限循环下去代码如下复制代码---- 数据库: `tree`--CREATE DATABASE `tree` DEFAULT CHARACTER SET gb2312 COLLATE gb2312_chinese_ci;USE `tree`;---- 表的结构 `class`--CREATE TABLE `class` (`id` int(11) NOT NULL auto_increment,`name` varchar(10) NOT NULL,`pid` int(11) NOT NULL,`depth` varchar(100) default '0',PRIMARY KEY (`id`)) ENGINE=MyISAM DEFAULT CHARSET=gb2312 AUTO_INCREMENT=30 ;$link =mysql_connect('localhost','root','root');mysql_select_db('tree');mysql_query ( 'set names GBK' );if($_GET['act']=='add'){$name=$_POST['name'];if($name=='') exit('name not null');$pid=$_POST['pid'];if($pid !=0){$sql="select * from class where id=".$pid;$result =mysql_query($sql);$row = mysql_fetch_array($result);$depth=$row['depth'].','.mysql_insert_id();//$getID即为最后一条记录的ID}else{$depth=0;}$sql="INSERT INTO class(name,pid,depth) VALUES('".$name."','".$pid."','".$depth."')";$result =mysql_query($sql);if(!$result){exit("shibai $sql");}else{exit("chenggong");}}?>名称栏目-----顶级分类-----sort_s(0);?>//$sql = "select * from `class` order by sort asc, id Desc";//$sql="select * from class where pid=0";//$result =mysql_query($sql);//while($row = mysql_fetch_array($result)){//$class_arr[] = array($row['id'],$row['name'],$row['classid'],$row['sort']);// echo $row['name'].$row['id'].'---'.$row['pid'].'';sorttree(0);//}function sorttree($id){//if()$sql="select * from class where pid=".$id;$result =mysql_query($sql);//$a=mysql_fetch_array($result);//$row = mysql_fetch_array($result);while($row = mysql_fetch_array($result)){$rid=explode(",",$row['depth']);$i=count($rid);$n = str_pad('',$i,'-',STR_PAD_RIGHT);$n = str_replace("-"," ",$n);//print_r($row).'';if($row['pid']==0){echo $n.'|-----'.$row['name'].'-----|';}else{echo $n.'|-'.$row['name'].'';}sorttree($row['id']);}}function sort_s($id){//if()$sql="select * from class where pid=".$id;$result =mysql_query($sql);//$a=mysql_fetch_array($result);//$row = mysql_fetch_array($result);while($row = mysql_fetch_array($result)){$rid=explode(",",$row['depth']);$i=count($rid);$n = str_pad('',$i,'-',STR_PAD_RIGHT);$n = str_replace("-"," ",$n);//print_r($row).'';if($row['pid']==0){echo "".$n.'|------'.$row['name']."-----|rn";}else{echo "".$n.' |- '.$row['name']."rn";}sort_s($row['id']);}}?>总结原理如何把它的各个分类一一列出来呢?
首先我们假设有这样的一个三级分类,新闻→PHP新闻→PHP6.0出来了。
如果我们要查找“PHP6.0出来了”这条新闻,我们先点击新闻,然后再点击PHP新闻就可以查出来了,也就是说我们可以通过祖父类一级一级地往下找,反过来我们只要知道一个子类的父类,就可以把它查找出来了。这样我们在设计数据库时就可以多设计一个父类id的字段就可以实现无限分类的功能了http://www.bkjia.com/PHPjc/631632.html www.bkjia.com true http://www.bkjia.com/PHPjc/631632.html TechArticle文章是作者原创的一篇关于在php中实现的无限级分类,有需要了解的朋友可以看看。 无限分类就像windows下新建一个文件夹,在新建的文件夹...
