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

yipeiwu_com7年前PHP代码库

话不多说,请看代码:

/**
* 无级递归分类 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 . ' ');
 }
 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;
 }

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持【宜配屋www.yipeiwu.com】!

相关文章

php简单获取文件扩展名的方法

本文实例讲述了php简单获取文件扩展名的方法。分享给大家供大家参考。具体实现方法如下: <?php function get_file_extension($file...

PHP函数microtime()用法与说明

定义和用法PHP函数microtime()返回当前 Unix 时间戳和微秒数。PHP函数microtime()语法microtime(get_as_float)PHP函数microtim...

php从完整文件路径中分离文件目录和文件名的方法

本文实例讲述了php从完整文件路径中分离文件目录和文件名的方法。分享给大家供大家参考。具体分析如下: basename()函数用于从路径中获得文件名 dirname()函数用于从路径中...

PHP几个实用自定义函数小结

本文实例总结了PHP几个实用自定义函数。分享给大家供大家参考,具体如下: 最近在看代码,发现以下是几个比较实用的函数。 1、取客户端IP function getOnlineIp()...

基于preg_match_all采集后数据处理的一点心得笔记(编码转换和正则匹配)

1、使用curl实现站外采集 具体请参考我上一篇笔记:https://www.jb51.net/article/46432.htm 2、编码转换首先通过查看源代码找到采集的网站使用的编码...