php分类递归递归的问题<?php <br />
function arrayPidProcess($data,$res=array(),$pid='0',$endlevel='1'){<br>
foreach ($data as $k => $v){<br>
if($v['pid']==$pid){<br>
$res[$v['id']]['info']=$v;<br>
if($endlevel!='0'){<br>
if($v['level']==$endlevel){<br>
$child=null;<br>
}<br>
else{<br>
$child=arrayPidProcess($data,array(),$v['id'],$endlevel);<br>
}<br>
$res[$v['id']]['child']=$child;<br>
}<br>
else{<br>
$child=arrayPidProcess($data,array(),$v['id']);<br>
if($child==''||$child==null){<br>
$res[$v['id']]['child']=null;<br>
}<br>
else{<br>
$res[$v['id']]['child']=$child;<br>
}<br>
}<br>
<br>
}<br>
}<br>
return $res;<br>
}<br>
$arr = array(<br>
array('id'=>1, 'name'=>'c', 'pid'=>0, 'level'=>1),<br>
array('id'=>2, 'name'=>'a', 'pid'=>0, 'level'=>1),<br>
array('id'=>3, 'name'=>'v', 'pid'=>1, 'level'=>2),<br>
array('id'=>4, 'name'=>'q', 'pid'=>3, 'level'=>3),<br>
array('id'=>5, 'name'=>'w', 'pid'=>4, 'level'=>4),<br>
array('id'=>6, 'name'=>'e', 'pid'=>5, 'level'=>5),<br>
array('id'=>7, 'name'=>'r', 'pid'=>0, 'level'=>1),<br>
array('id'=>8, 'name'=>'t', 'pid'=>0, 'level'=>1),<br>
array('id'=>9, 'name'=>'y', 'pid'=>0, 'level'=>1),<br>
array('id'=>10, 'name'=>'u', 'pid'=>0, 'level'=>1),<br>
array('id'=>11, 'name'=>'i', 'pid'=>0, 'level'=>1),<br>
);<br>
print_r(arrayPidProcess($arr));
5189da8f95634.jpg!550xauto.jpg
( 453.25 KB 下载:175 次 )
AD:真正免费,域名+虚机+企业邮箱=0元
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
C++高性能并发应用_C++如何开发性能关键应用
Java AI集成Deep Java Library_Java怎么集成AI模型部署
Golang后端API开发_Golang如何高效开发后端和API
Python异步并发改进_Python异步编程有哪些新改进
C++系统编程内存管理_C++系统编程怎么与Rust竞争内存安全
Java GraalVM原生镜像构建_Java怎么用GraalVM构建高效原生镜像
Python FastAPI异步API开发_Python怎么用FastAPI构建异步API
C++现代C++20/23/26特性_现代C++有哪些新标准特性如modules和coroutines
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号