/**
* 获取所属公司
* @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中递归查找父级名称的更多相关文章

  1. js 递归树结构数据查找父级

    1.json树数据查找所有父级--完成 json:树结构数据 var arrData = [{ "label": "中国", "City": ...

  2. Mysql 实现 向上递归查找父节点并返回树结构

    需求:通过mysql 8.0以下版本实现,一个人多角色id,一个角色对应某个节点menu_id,根节点的父节点存储为NULL, 向上递归查找父节点并返回树结构. 如果只有叶子,剔除掉; 如果只有根,只 ...

  3. JS-对象查找父级

    之前在寻找两个以上的父级,一直傻傻的用parent().parent()... 今天,需要写五个,当然以前也是写过五个的,但是今天总想着换个简单的方式,至少不要.parent().parent().p ...

  4. ng-change事件中如何获取$event和如何在子元素事件中阻止调用父级元素事件(阻止事件冒泡)

    闲聊: 今天小颖要实现一个当改变了select内容后弹出一个弹框,并且点击select父元素使得弹框消失,这就得用到阻止事件的冒泡了:$event.stopPropagation(),然而小颖发现,在 ...

  5. dom node 查找父级parentNode

    var o = document.querySelectorAll("a[href='baidu.com']"); var p = o[o.length-1];console.lo ...

  6. PHP 根据子ID递归获取父级ID,实现逐级分类导航效果

    代码: //当前路径 $cate=M('wangpan_class')->select(); function get_top_parentid($cate,$id){ $arr=array() ...

  7. mysql 查询所有父级名称

    SELECT T2.id, T2.name FROM ( SELECT @r AS _id, ,,@stop) as stop, (SELECT @r := p_id FROM goods_class ...

  8. 使用Oracle数据库实现树形结构表的子-父级迭代(递归)查询和删除,通过级联菜单简单举例

    前言: 我们在开发中,常常遇到单表的子-父id级联的表结构,在树形的深度不确定的情况下,一次查询出某个树形结构下的所有具有子-父级关系的数据变得十分困难. 这时,我们使用oracle提供的CONNEC ...

  9. jQuery使用(四):DOM操作之查找兄弟元素和父级元素

    查找兄弟元素 向下查找兄弟元素 next() nextAll() nextUntil() 向上查找兄弟元素 prev() prevAll() prevUntil() 查找所有兄弟元素 siblings ...

随机推荐

  1. shell-array

    [shell-array] Creating Array: $ names=("Bob" "Peter" "$USER" "Big ...

  2. WWW缓存方式

    缓存方式 使用WWW.LoadFromCacheOrDownload接口.AssetBundles将保存在本地设备的Unity的缓存文件夹中.WebPlayer 有50MB的缓存上限,PC/Mac/A ...

  3. eval 是执行一段完整的js字符串代码,并将结果返回

    var strArray="[{"message1":{ "id": "-1","content": &quo ...

  4. VisualVM远程连接Tomcat(转)

    转自:http://www.cnblogs.com/sunshine-2015/p/5547128.html VisualVM VisualVm是一个将很多JDK命令工具可视化的windows程序,直 ...

  5. C++编程语言学习资料

    C++ How to Program, 7/e (C++大学教程 第7版) 英文原版 全彩页 C++大学教程(第五版)中文版高清PDF下载 C++大学教程 第五版 (C++ How to Progra ...

  6. [SoapUI] DataSource, DataSourceLoop, DataSink

    Script assertion in login:

  7. 两个线程并发执行以下代码,假设a是全局变量,那么以下输出______是不可能的?

    3.两个线程并发执行以下代码,假设a是全局变量,那么以下输出______是不可能的? void foo(){    ++a;    printf("%d ",a);}A.3 2   ...

  8. poj 2007 Scrambled Polygon

    #include<stdio.h> #include<algorithm> using namespace std; #define Max 60 struct Point { ...

  9. matrix derivatives

    来源:cs229 stanford Machine Learning Notes

  10. 兼容低于IE9不支持html5标签的元素的方法

    方法一: <!--[if lt IE9]> <script>    (function() {     if (!      /*@cc_on!@*/     0) retur ...