码迷,mamicode.com
首页 > Web开发 > 详细

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

时间:2017-03-02 16:36:26      阅读:157      评论:0      收藏:0      [点我收藏+]

标签:param   利用   amp   logs   class   array   his   desc   field   

/**
*   无级递归分类 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 .= ‘<option value="‘ . $value[‘class_id‘] . ‘">‘ . $tag . $value[‘class_name‘] . ‘</option>‘;
        $tree .= recursiveAssort($value[‘class_id‘], $tag . ‘&emsp;‘);
    }
    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;
    }

 

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

标签:param   利用   amp   logs   class   array   his   desc   field   

原文地址:http://www.cnblogs.com/gentsir/p/6490705.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!