例子:

     $data_0=[];$data_1=[];$data_2=[];$data_3=[];$data_1_t=[];$data_2_t=[];$data_3_t=[];$res = Db::name('menu')->field('id as value,title as name,pid,controller,position,hide_banner,model,url,img')->where('deleted',0)->where('hide',0)->whereNull('pid')->order('sort desc,id desc')->select(); if(!empty($res)){$count = count($res);foreach($res as $k => $rs){$rs['children']=getMenuData($rs['value'],'menu',1);$res[$k]= $rs;//生成前端各栏目的分类//一级$menu_list_1 = Db::name('menu')->field('id,title')->where('pid',$rs['value'])->where('deleted',0)->where('level',1)->order('sort desc,id desc')->select();if(!empty($menu_list_1)){$data_1[$rs['value']]=array_column($menu_list_1,null,'id');$data_1_t = array_merge($data_1_t,array_column($menu_list_1,'title','id'));
//                      $data_1_t = $data_1_t + array_column($menu_list_1,'title','id');foreach($menu_list_1 as $v1){//2级$menu_list_2 = Db::name('menu')->field('id,title')->where('pid',$v1['id'])->where('deleted',0)->where('level',2)->order('sort desc,id desc')->select();if(!empty($menu_list_2)){$data_2[$v1['id']]=array_column($menu_list_2,null,'id');//$data_2_t = array_merge($data_2_t,array_column($menu_list_2,null,'id'));$data_2_t = $data_2_t + array_column($menu_list_2,'title','id');foreach($menu_list_2 as $v2){//3级$menu_list_3 = Db::name('menu')->field('id,title')->where('pid',$v2['id'])->where('deleted',0)->where('level',3)->order('sort desc,id desc')->select();if(!empty($menu_list_3)){$data_3[$v2['id']]=array_column($menu_list_3,null,'id');//$data_3_t = array_merge($data_3_t,array_column($menu_list_3,null,'id'));$data_3_t = $data_3_t + array_column($menu_list_3,'title','id');foreach($menu_list_3 as $v3){//4级$menu_list_4 = Db::name('menu')->field('id,title')->where('pid',$v3['id'])->where('deleted',0)->where('level',4)->order('sort desc,id desc')->select();if(!empty($menu_list_4)){$data_4[$v3['id']]=array_column($menu_list_4,null,'id');}}}}}}}}//0 顶级 $data_0 = array_column($res, 'name','value');}

结果:

{"code": 200, "msg": "成功", "count": 12, "data": {"data_0": {"1": "首页", "3": "直播课程", "4": "录播课程", "5": "在线题库", "6": "团队", "7": "资讯", "8": "商城", "9": "论坛", "11": "新手指南", "12": "帮助中心", "14": "关于我们1", "18": "在线招聘"}, "data_1": {"3": {"25": {"id": 25, "title": "自考"}, "26": {"id": 26, "title": "教师"}}, "4": {"33": {"id": 33, "title": "教师1"}, "34": {"id": 34, "title": "自考1"}}, "5": {"39": {"id": 39, "title": "自考"}, "40": {"id": 40, "title": "人力"}, "41": {"id": 41, "title": "教师"}}, "6": {"51": {"id": 51, "title": "会计"}, "52": {"id": 52, "title": "教师"}, "53": {"id": 53, "title": "人力"}}, "7": {"57": {"id": 57, "title": "公司新闻"}, "58": {"id": 58, "title": "行业新闻"}, "59": {"id": 59, "title": "公告"}}, "8": {"60": {"id": 60, "title": "计算机"}, "61": {"id": 61, "title": "自考"}}, "11": {"65": {"id": 65, "title": "请修改标题"}, "66": {"id": 66, "title": "请修改标题"}, "67": {"id": 67, "title": "意见反馈"}, "68": {"id": 68, "title": "VIP购买"}, "69": {"id": 69, "title": "疑难问答"}, "70": {"id": 70, "title": "交流社区"}}, "12": {"71": {"id": 71, "title": "请修改标题"}, "72": {"id": 72, "title": "发布须知"}, "73": {"id": 73, "title": "新手入门"}, "74": {"id": 74, "title": "注册账号"}, "75": {"id": 75, "title": "如何支付"}}, "14": {"79": {"id": 79, "title": "联系方式"}, "80": {"id": 80, "title": "关于我们"}}, "18": {"76": {"id": 76, "title": "文职类招聘"}, "77": {"id": 77, "title": "市场部招聘"}, "78": {"id": 78, "title": "技术部招聘"}}}, "data_1_t": ["教师", "自考", "自考1", "教师1", "教师", "人力", "自考", "人力", "教师", "会计", "公告", "行业新闻", "公司新闻", "自考", "计算机", "交流社区", "疑难问答", "VIP购买", "意见反馈", "请修改标题", "请修改标题", "如何支付", "注册账号", "新手入门", "发布须知", "请修改标题", "技术部招聘", "市场部招聘", "文职类招聘", "关于我们", "联系方式"], "data_2": {"25": {"29": {"id": 29, "title": "本科"}, "30": {"id": 30, "title": "专科"}}, "26": {"27": {"id": 27, "title": "小学"}, "28": {"id": 28, "title": "中学"}}, "33": {"37": {"id": 37, "title": "中学2"}, "38": {"id": 38, "title": "小学2"}}, "34": {"35": {"id": 35, "title": "研究生"}, "36": {"id": 36, "title": "博士"}}, "39": {"47": {"id": 47, "title": "行管专科"}, "48": {"id": 48, "title": "行管本科"}}, "40": {"45": {"id": 45, "title": "小学1"}, "46": {"id": 46, "title": "中学1"}}, "41": {"42": {"id": 42, "title": "高中"}, "43": {"id": 43, "title": "中学"}, "44": {"id": 44, "title": "小学"}}, "51": {"56": {"id": 56, "title": "大专"}}, "52": {"55": {"id": 55, "title": "大专"}}, "53": {"54": {"id": 54, "title": "大专"}}, "60": {"63": {"id": 63, "title": "PHP教程"}, "64": {"id": 64, "title": "JS教程"}}, "61": {"62": {"id": 62, "title": "专科升本科密级"}}}, "data_2_t": {"27": "小学", "28": "中学", "29": "本科", "30": "专科", "35": "研究生", "36": "博士", "37": "中学2", "38": "小学2", "42": "高中", "43": "中学", "44": "小学", "45": "小学1", "46": "中学1", "47": "行管专科", "48": "行管本科", "54": "大专", "55": "大专", "56": "大专", "62": "专科升本科密级", "63": "PHP教程", "64": "JS教程"}, "data_3": {"28": {"32": {"id": 32, "title": "请修改标题"}}, "30": {"31": {"id": 31, "title": "请修改标题"}}, "44": {"49": {"id": 49, "title": "综合素质"}, "50": {"id": 50, "title": "教育知识与能力"}}}, "data_3_t": {"31": "请修改标题", "32": "请修改标题", "49": "综合素质", "50": "教育知识与能力"}, "data_4": null, "data_4_t": null}
}

取值方式一:使用array_merge函数

$data_1_t = array_merge($data_1_t,array_column($menu_list_1,'title','id'));

array_merge函数,当ID=数字时,会整合去掉

取值方式二:使用+号

$data_1_t = $data_1_t + array_column($menu_list_1,'title','id');

tp5 php array_merge合并函数array_column(id值不见)处理办法(创建合成合拼数组)(foreach 记录集)相关推荐

  1. 前端性能优化的三个维度

    前端性能优化可以分为三个level:静态资源优化.接口访问优化.页面渲染速度优化,在操控门槛上依次递增,优化效果上越发没有这么明显,所以很多小团队只会做到了第一个level 追求极致的前端性能体验,提 ...

  2. php输出二维函数,兼容php二维数组取值函数array_column使用

    PHP5.5发布,其中增加了一个新的数组函数array_column,感觉不错的! 但是低版本PHP要使用,得自己实现: if(!function_exists('array_column')){ f ...

  3. php 数组函数array_merge 合并数据的坑

    array_merge (PHP 4, PHP 5, PHP 7) array_merge - 合并一个或多个数组 说明 array_merge ( array $array1 [, array $. ...

  4. php数组的交替合并函数,php数组合并array_merge()函数使用注意事项

    1.array_merge()合并 例子 $array = array("a"=>"bb"); $array2 = array("b" ...

  5. bind merge r 和join_R语言中的数据合并函数(merge,cbind和rbind)的使用

    R语言中的数据合并函数(merge,cbind和rbind)的使用-R语言中用cbind() 和rbind() 构建分块矩阵 1.merge函数 两个数据框拥有相同的时间或观测值,但这些列却不尽相同. ...

  6. php中strrpos函数的返回值类型是型_PHP常用函数总结

    PHP常用函数总结 输出: 整形,相同字符数量 57.strrchr(): 返回一个字符串在另一个字符串中最后一次出现位置开始到末尾的字符串 调用: string strrchr ( string $ ...

  7. if python 判断函数返回值_Python函数的返回值和作用域

    函数的返回值和作用域 1.返回值 def guess(x): if x > 3: return "> 3" else: return "<= 3&quo ...

  8. php 合并数组 效率,PHP将两个关联数组合并函数-增高函数效率

    PHP将两个关联数组合并函数---提高函数效率 在foreach中循环查询数据代码量比较少,但是性能比较低,好点的解决办法是将id收集起来,用in一次性查询,但是这引发了数据结构不是我们用PHP自带的 ...

  9. python返回函数值并退出函数_Python函数的返回值和作用域

    函数的返回值和作用域 1.返回值 def guess(x): if x > 3: return "> 3" else: return "<= 3&quo ...

最新文章

  1. pythonweb开发-Web | 浅谈用Python进行Web开发
  2. linux php源码包 安装openssl 和curl 扩展
  3. Android8.0适配方案
  4. SpringMVC接收json数组对象
  5. python基础(part10)--函数
  6. error LNK2001: unresolved external symbol public: __thiscall CNaDialog::CNaDialog(class CWnd *)
  7. kotlin 查找id_Kotlin程序查找矩阵的转置
  8. jquery ajax自动生成表格table(一)
  9. 互联网日报 | 3月15日 星期一 | 快手发力布局二次元赛道;怪兽充电注册用户达2.19亿;苹果宣布停产初代HomePod...
  10. 网络基础之TCP/IP五层模型
  11. 人脸对齐—级联回归模型和深度学习模型
  12. 计算机网络技术该考什么证,计算机网络工程师证书
  13. windows server 2008 R2 怎么集成USB3.0驱动
  14. 初中计算机数学,初中数学
  15. html自动调音量,HTML5 音量调节控件
  16. FIR滤波器窗口设计法和频率采样设计法
  17. PHP通过HTTP_USER_AGENT判断是否为手机移动终端的函数
  18. WordPress博客网站屏蔽搜索特殊关键字和网址,屏蔽恶意特殊关键词的方法分享,附如何屏蔽搜索收录
  19. java ajax同步请求,成都汇智动力-java ajax实现异步同步请求全面详解
  20. zumi 画师_【Zumi画师】【全彩无修】 1- 42期图集整合 18G

热门文章

  1. window对象方法
  2. C#中ComBox赋值取值
  3. ACM-ICPC 2018 徐州赛区网络预赛 - A. Hard to prepare - (计数递归)
  4. 全球及中国水果块行业消费者偏好调查及投资价值分析报告2021-2027年版
  5. 2022来了,用 Python 制作一场环保的烟花秀
  6. 2012互联网开发应该关注的
  7. CUDA之向量点积运算
  8. Abaqus将历史输出数据转换为柱坐标方向
  9. Pygame 对图像进行翻转
  10. 第五课: 图像的 BLOB 分析处理几何变换(union_adjacent_contours_xld)--find_pads.hdev,count_pellets.hdev