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

yipeiwu_com6年前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】!

相关文章

session在PHP大型web应用中的使用

这时,函数bool session_set_save_handler ( callback open, callback close, callback read, callback w...

php microtime获取浮点的时间戳

一直以来用这个函数获取: 复制代码 代码如下: function microtime_float(){ list($usec, $sec) = explode(" ", microtim...

php语言流程控制中的主动与被动

这一年来,广大的phper都在辛勤劳作, 比如淘宝改版, 云计算, 腾讯开放平台, 网游, 这些作品少不了phper的功劳, 相信php语言可以继续领先行业10年, 我们憧憬未来50年,...

MacOS 安装 PHP的图片裁剪扩展Tclip

Tclip 用于图片裁剪,有以下特点: 能进行人脸识别。图片中有人脸,将自动视为人脸区域为重要区域,将不会被裁剪掉。 自动识别其它重要区域。如果图片中未识别出人脸,则会根据特征分布计算出...

php+Ajax无刷新验证用户名操作实例详解

php+Ajax无刷新验证用户名操作实例详解

本文实例讲述了php+Ajax无刷新验证用户名操作。分享给大家供大家参考,具体如下: AJAX 简介 AJAX = Asynchronous JavaScript And XML(异步...