找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1566|回复: 0
打印 上一主题 下一主题

PHP两种实现无级递归分类的方法

[复制链接]

2647

主题

2647

帖子

7881

积分

论坛元老

Rank: 8Rank: 8

积分
7881
跳转到指定楼层
楼主
发表于 2018-2-14 05:27:39 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

            话不多说,请看代码:
/**
* 无级递归分类 TP框架
* @param int $assortPid 要查询分类的父级id
* @param mixed $tag  上下级分类之间的分隔符
* @return string $tree 返回的分类树型结构结果
*
*/
function recursiveAssort($assortPid, $tag = '')
{
$assort = M('goods_class')->where("class_pid = $assortPid")->field('class_id, class_name')->select();
foreach ($assort as $value) {
$tree .= '' . $tag . $value['class_name'] . '';
$tree .= recursiveAssort($value['class_id'], $tag . ' ');
}
return $tree;
}
/**
* 利用php的引用传递 CI框架
*
*/
public function get_access()
{
$access = array();
$field = 'id, pid, method, name, description';
$q_access = $this->db->select($field)->get('access');
$q_result = $q_access->result_array();
if (!empty($q_result)) {
  $items = array();
  foreach ($q_result as $value) {
  $items[$value['id']] = $value;
  }
  foreach ($items as $key => $item) {
  if ($item['pid'] == 0) {
   $access[] = &$items[$key];
  } else {
   $items[$item['pid']]['sub_access'][] = &$items[$key];
  }
  }
}
return $access;
}
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持脚本之家!
            
            
您可能感兴趣的文章:
  • ThinkPHP实现递归无级分类——代码少
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端