巅云智能建站平台搭建版(创业流派版)火爆上线,毕生受权!新增:文章智能收罗+全站真静态打包+都会分站+智能小法式+不法词过滤+H5自顺应+智能链词等功效功效概况
赞助文档Help

PHP 无穷级分类

一佰互联网站建造(www.taishanly.com) 宣布日期 2020-04-25 14:41:33 阅读数: 96

有一段时候没用过无穷极分类,不巧明天又用到,以是特意去翻箱回首之前。为了避免今后找起来费事,特意贴在这里。

<?php
/**
 * 无穷级分类 类
 */
class Category{
 /**
  * 前往一维数组
  * @param [type] $cate 要递归的数组
  * @param string $html 子级分类前要显现的缩进标记。默许 "─"
  * @param integer $pid 父级分类ID。默许为 0,表现顶级分类
  * @param integer $level level级,共同 $html 显现充足的缩进。默许为 1,表现顶级分类
  * @return [type]   [description]
  */
 static public function unlimitedForLevel($cate, $html = "─", $pid = 0, $level = 1){
  $arr = array();
  foreach($cate as $v){
   if($v["pid"] == $pid){
    $v["level"] = $level;
    $v["html"] = str_repeat($html, $level - 1);
    $arr[] = $v;
    $arr = array_merge($arr, $this->unlimitedForLevel($cate, $html, $v["id"], $level + 1));
   }
  }
  return $arr;
 }
 /**
  * 前往多维数组
  * @param [type] $cate 要递归的数组
  * @param string $name 子级分类在父分类数组中的 key
  * @param integer $pid 父级分类ID。默许为0,表现顶级分类
  * @return [type]  [description]
  */
 static public function unlimitedForlayer($cate, $name = "child", $pid = 0){
  $arr = array();
  foreach($cate as $v){
   if( $v["pid"] == $pid){
    $v[$name] = self::unlimitedForlayer($cate, $name, $v["id"]);
    $arr[] = $v;
   }
  }
  return $arr;
 }
 /**
  * 通报子分类ID前往一切父级分类
  * @param [type] $cate 要递归的数组
  * @param [type] $id 子分类ID
  * @return [type]  [description]
  */
 static public function getParents($cate, $id){
  $arr = array();
  foreach($cate as $v){
   if($v["id"] == $id){
    $arr[] = $v;
    $arr = array_merge(self::getParents($cate, $v["pid"]), $arr);
   }
  }
  return $arr;
 }
 /**
  * 通报父级分类ID前往一切子分类ID
  * @param [type] $cate 要递归的数组
  * @param [type] $pid 父级分类ID
  * @return [type]  [description]
  */
 static public function getChildrenId($cate, $pid){
  $arr = array();
  foreach($cate as $v){
   if($v["pid"] == $pid){
    $arr[] = $v["id"];
    $arr = array_merge($arr, self::getChildrenId($cate, $v["id"]));
   }
  }
  return $arr;
 }
 /**
  * 通报父级分类ID前往一切子级分类
  * @param [type] $cate 要递归的数组
  * @param [type] $pid 父级分类ID
  * @return [type]  [description]
  */
 static public function getChildren($cate, $pid){
  $arr = array();
  foreach($cate as $v){
   if($v["pid"] == $pid){
    $arr[] = $v;
    $arr = array_merge($arr, self::getChildren($cate, $v["id"]));
   }
  }
  return $arr;
 }
}
?>

以上便是本文的全数内容,但愿本文的内容对大师的进修或任务能带来必然的赞助,同时也但愿多多撑持网页设想!

TAG标签: PHP   无穷级分类  
一佰互联是天下着名建站品牌办事商,咱们有九年、网站建造、网页设想、php开辟和域名注册及假造主机办事经历,供给的办事更是天下着名。最近几年来还整合团队上风自立开辟了可视化多用户”“3.0平台版,拖拽排版网站建造设想,轻松完成pc站、手机微网站、小法式、APP一体化全网营销网站扶植 ,已胜利的为天下上百家收集公司供给自助建站平台搭建办事。

相干消息more

25
04月
PHP封装mysqli基于面向工具的mysq

本文实例报告了PHP封装mysqli基于面向工具的mysql数据库操纵与用法。分享给大师供大师参考,详细以下:起首封装好mysql类mysq... >>概况

07
04月
作品画面太空?这四个技能让你有用避免! -

在平常的设想任务中,信任大师会经常听到需要方说:「你做的工具太空了、留这么多空缺让我给你做吗?」等等的谈吐,元素太少就会空:轻易给人一种贫乏... >>概况

29
04月
zf框架db类的分页示例分享

zf框架的分页示例复制代码 代码以下:<?phpisset($_GET["page"]) ? $page = $_GET["page"... >>概况

30
03月
“短信群发小我版”APP真的来啦,注册用户已

简介:时候回溯2016年——短信群发回复的一年,咱们就有了一个斗胆的设法,将短信与智能APP连系,开辟一款别创一格的短信群发APP。设法虽好... >>概况

高端网站扶植

美工统筹SEO,为企业电子商务营销助力!

德律风:

023-85725751
建站

产物

域名注册 假造主机 云办事器 企业邮局
智能建站 APP打包 微站/小法式 创业平台
网站推行 媒体营销 智能收罗 AI机械人
400德律风 短信营销 店销机械人
私家定制 流派网站