php中递归查找父级名称
/**
* 获取所属公司
* @param array 列表
* @param $id 上级ID
* @return array
*/
private static function get_top_company($company, $id)
{
$arr = [];
foreach($company as $v) {
if($v['id'] == $id) {
$arr[] = $v;
$arr = array_merge(self::get_top_company($company, $v['upid']), $arr);
}
}
return $arr;
}
$list = [];
foreach ($data as $k => $v) {
$company = self::get_top_company($this->_getCompanyList(), $v['company']);
$list[$k]['id'] = $v['id'];
$list[$k]['name'] = $v['name'];
$list[$k]['code'] = $v['code'];
$list[$k]['mobile'] = $v['mobile'];
$list[$k]['position'] = $v['position'];
$list[$k]['reg_time'] = date("Y-m-d H:i", $v['reg_time']);
$list[$k]['company'] = join('-', array_column($company, 'company_name', 'id'));
}
php中递归查找父级名称的更多相关文章
- js 递归树结构数据查找父级
1.json树数据查找所有父级--完成 json:树结构数据 var arrData = [{ "label": "中国", "City": ...
- Mysql 实现 向上递归查找父节点并返回树结构
需求:通过mysql 8.0以下版本实现,一个人多角色id,一个角色对应某个节点menu_id,根节点的父节点存储为NULL, 向上递归查找父节点并返回树结构. 如果只有叶子,剔除掉; 如果只有根,只 ...
- JS-对象查找父级
之前在寻找两个以上的父级,一直傻傻的用parent().parent()... 今天,需要写五个,当然以前也是写过五个的,但是今天总想着换个简单的方式,至少不要.parent().parent().p ...
- ng-change事件中如何获取$event和如何在子元素事件中阻止调用父级元素事件(阻止事件冒泡)
闲聊: 今天小颖要实现一个当改变了select内容后弹出一个弹框,并且点击select父元素使得弹框消失,这就得用到阻止事件的冒泡了:$event.stopPropagation(),然而小颖发现,在 ...
- dom node 查找父级parentNode
var o = document.querySelectorAll("a[href='baidu.com']"); var p = o[o.length-1];console.lo ...
- PHP 根据子ID递归获取父级ID,实现逐级分类导航效果
代码: //当前路径 $cate=M('wangpan_class')->select(); function get_top_parentid($cate,$id){ $arr=array() ...
- mysql 查询所有父级名称
SELECT T2.id, T2.name FROM ( SELECT @r AS _id, ,,@stop) as stop, (SELECT @r := p_id FROM goods_class ...
- 使用Oracle数据库实现树形结构表的子-父级迭代(递归)查询和删除,通过级联菜单简单举例
前言: 我们在开发中,常常遇到单表的子-父id级联的表结构,在树形的深度不确定的情况下,一次查询出某个树形结构下的所有具有子-父级关系的数据变得十分困难. 这时,我们使用oracle提供的CONNEC ...
- jQuery使用(四):DOM操作之查找兄弟元素和父级元素
查找兄弟元素 向下查找兄弟元素 next() nextAll() nextUntil() 向上查找兄弟元素 prev() prevAll() prevUntil() 查找所有兄弟元素 siblings ...
随机推荐
- 在zookeeper集群的基础上,搭建伪solrCloud集群
伪集群的搭建:将solrCloud搭建到同一台机器上. 准备工作 1 将在window中部署的单机版solr上传到服务器(虚拟机)中 solr的简单部署:在tomcat中启动slor 的内容 这一次放 ...
- EMC校招笔试题目
------------------------------------------------- 1,7×(1/7) = 1是什么率? 乘法运算满足结合律,交换律和分配率.这个题目用的应该是交换律. ...
- 从Oracle数据库中查询与某一时间点最接近的记录
select * from data_taskregionschedule WHERE regioncode='HYL' and updatetime-to_date('2018-05-15','yy ...
- java常用正则校验工具类
正则常用校验工具类 import java.util.regex.Pattern; /** * @program: * @description: 校验工具类 * @author: xujingyan ...
- Python入门之 字符串操作,占位符,比较大小 等
Python 字符串 常用的操作 切片 左包括右不包括的原则 ________________ 比较字符串大小 eg: cmp("a",'b') -1第一个比第二个小 0 ...
- iOS调试程序的方法
IOS各种调试技巧豪华套餐 普通操作 如图3 基本的断点操作如下 图4 点击那个黑列列就创建了一个断点,再次点击就临时取消这个断点(但是不删除),长按那个断点拖出去就删除了(mac os的系统工程师就 ...
- 653. Two Sum IV - Input is a BST 二叉树版本
[抄题]: Given a Binary Search Tree and a target number, return true if there exist two elements in the ...
- 20-list简单使用:
C++list的使用总结及常用list操作 C++中list用法详解 STL中list的erase()方法的使用 listiterator 最近刚刚接触stl的list 学习的时候遇到了很多 ...
- qmake not exec in ubuntu
Description Today, I want to run qmake command in terminal, but, it has error message such qmake: co ...
- Openssl verify命令
一.简介 verify命令对证书的有效性进行验证,verify 指令会沿着证书链一直向上验证,直到一个自签名的CA 二.语法 openssl verify [-CApath directory] [- ...