Thinkphp简单的无限分类

浏览:2500 发布日期:2016/05/07 分类:技术分享 关键字: Thinkphp 无限分类
第三次修改<?php 
header("Content-type:text/html;charset=utf-8");
class Category{
    /**
     *@param     [Array]      $data  [从数据库中读取的结果集(二维索引数组)] 
     *@param     [String]     $id    [自增主键字段名]
     *@param     [String]     $pid   [上级分类]
     *@param     [String]     $level [分类等级]
     *@param     [int]        $count [顶级分类id]
     *@return   [Array]     [重新排列的数组]
     */


    public static $result = array();
    protected $pid = "";
    protected $level = "";
    protected $count = "";
    public function fenlei($data,$id="id",$pid="pid",$level="level",$num=0,$count=0){
        foreach($data as $key=>$value){
            if($value[$pid]==$count){
                $value[$level] = $num;
                $this->level = $value[$level];
                self::$result[] = $value;
                $this->pid = $value[$id];
                unset($data[$key]);
                $this->fenlei($data,$id,$pid,$level,$num+1,$this->pid); 
            }
        }
    return self::$result;
    }
}

$link =mysql_connect("localhost","root","admin");
mysql_select_db("mytry");
mysql_query("set names utf8");
$result = mysql_query("select * from ab_szdq");
var_dump($result);
while($list = mysql_fetch_assoc($result)){
    $array[]=$list;
}
var_dump($array);
echo "<hr />";
$Category= new Category;
$list = $Category->fenlei($array,"id","parent_id");
var_dump($list);
 ?>
这个应该没问题了,心好累
最佳答案
评论( 相关
后面还有条评论,点击查看>>