PHP中文网上的无限极分类

原文地址:http://www.php.cn/code/3966.html

fenlei.php

<?php
class fenlei
{
    public $db;
    //构造函数,构造函数没有返回值
    public function __construct($dbname,$host='localhost',$user='root',$pass='root')
    {
        $dsn="mysql:host={$host};dbname={$dbname}";
        try{
            $this->db=new PDO($dsn,$user,$pass);
        }catch(PDOException $e){
            die("错误:".$e->getMessage());
        }
    }

    public function getlist($pid=0,&$result=array(),$space=0)
    {
        $space=$space+2;
        $sql="select * from goods where pid={$pid}";
        $res=$this->db->query($sql);
        while($row=$res->fetch(PDO :: FETCH_ASSOC)){
            $row['name']=str_repeat(' &nbsp;',$space).'|--'.$row['name'];
            $result[]=$row;
            $this->getlist($row['id'],$result,$space);
        }
        return $result;
    }


function displayCate($pid=0,$selected=1){
    $rs=$this->getList($pid);
    $str='<select>';
    foreach ($rs as $v){
        //$selected为默认选中项的id
        if ($v['id'] == $selected){
            $str.="<option selected='selected'>{$v['name']}</option>"; 
        }else{
            $str.="<option>{$v['name']}</option>"; 
        }   
    }
    $str.='</select>';
    return $str;
}


}

$fl=new fenlei('test');
echo $fl->displayCate();

效果图:

原文地址:https://www.cnblogs.com/yolo-bean/p/7354594.html