• 微信
    咨询
    微信在线咨询 服务时间:9:00-18:00
    纵横数据官方微信 使用微信扫一扫
    马上在线沟通
  • 业务
    咨询

    QQ在线咨询 服务时间:9:00-18:00

    选择下列产品马上在线沟通

    纵横售前-老古
    QQ:519082853 售前电话:18950029581
    纵横售前-江夏
    QQ:576791973 售前电话:19906048602
    纵横售前-小李
    QQ:3494196421 售前电话:18965140883
    纵横售前-小智
    QQ:2732502176 售前电话:17750597339
    纵横售前-燕子
    QQ:609863413 售前电话:17750597993
    纵横值班售后
    QQ:407474592 售后电话:400-1886560
    纵横财务
    QQ:568149701 售后电话:18965139141

    售前咨询热线:

    400-188-6560

    业务姚经理:18950029581

  • 关注

    关于纵横数据 更多优惠活动等您来拿!
    纵横数据官方微信 扫一扫关注官方微信
  • 关闭
  • 顶部
  • 您所在的位置 : 首页 > 新闻公告 > php的无限极分类怎么实现

    php的无限极分类怎么实现


    每一个无限分类都需要记录它的父级id,当为顶级分类时,父级id为0.这样无论哪个分类都可以通过父级id一层 层的去查明它所有的父级,以便清楚知道它所属哪种分类,层级深度为多少,无限分类在实际开发中非常常用,无限分类在面试中也会常被问到

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    include PHP
    /*
    使用的是三种递归中的一种 &
    /*
    include('Catecontroller.php');//引入连接数据库文件
     
    function getList($pid = 0, &$result = array(), $spac = 0)
    {
        $spac = $spac + 2;//标题前空格重复的次数
        $sql = "SELECT * FROM cate WHERE pid= $pid";//根据父id查找数据
        $res = mysql_query($sql);//发送sql语句
     
        while ($row = mysql_fetch_assoc($res)) {//判断$row里的值是否为空然后再循环
            $row['cate_name'] = str_repeat(' ',$spac).'|--'.$row['cate_name']; //str_repeat 重复括号里的字符串,后面跟的是次数
            $result[] = $row;//把数组赋给 $result
            getList($row['id'],$result,$spac);//递归调用,自己调用自己 这个括号里的参数和上面getList($pid=0...)是一样的$row['id']==$pid=0;
        }
        return $result;//把结果返回出去
    }
     
    $rs = getList();//使用方法
     
    var_dump($rs);//打印方法结果

    以上无限分类用的是递归算法,递归算法简单的解释就是自己调用自己。
    声明:文章来自网络转载,若无意中有侵犯您权益的信息,请联系我们,我们会在 第一时间删除!


    最新推荐


    微信公众帐号
    关注我们的微信