搜索
系统检测到您的用户名不符合规范:

php 递归的问题

浏览:3124 发布日期:2013年05月08日 分类:系统代码
php分类递归递归的问题
<?php
function arrayPidProcess($data,$res=array(),$pid='0',$endlevel='1'){
foreach ($data as $k => $v){
if($v['pid']==$pid){
$res[$v['id']]['info']=$v;
if($endlevel!='0'){
if($v['level']==$endlevel){
$child=null;
}
else{
$child=arrayPidProcess($data,array(),$v['id'],$endlevel);
}
$res[$v['id']]['child']=$child;
}
else{
$child=arrayPidProcess($data,array(),$v['id']);
if($child==''||$child==null){
$res[$v['id']]['child']=null;
}
else{
$res[$v['id']]['child']=$child;
}
}

}
}
return $res;
}
$arr = array(
array('id'=>1, 'name'=>'c', 'pid'=>0, 'level'=>1),
array('id'=>2, 'name'=>'a', 'pid'=>0, 'level'=>1),
array('id'=>3, 'name'=>'v', 'pid'=>1, 'level'=>2),
array('id'=>4, 'name'=>'q', 'pid'=>3, 'level'=>3),
array('id'=>5, 'name'=>'w', 'pid'=>4, 'level'=>4),
array('id'=>6, 'name'=>'e', 'pid'=>5, 'level'=>5),
array('id'=>7, 'name'=>'r', 'pid'=>0, 'level'=>1),
array('id'=>8, 'name'=>'t', 'pid'=>0, 'level'=>1),
array('id'=>9, 'name'=>'y', 'pid'=>0, 'level'=>1),
array('id'=>10, 'name'=>'u', 'pid'=>0, 'level'=>1),
array('id'=>11, 'name'=>'i', 'pid'=>0, 'level'=>1),
);
print_r(arrayPidProcess($arr));

附件 5189da8f95634.jpg!550xauto.jpg ( 453.25 KB 下载:204 次 )

收藏
sunshine8888
积分:57 等级:LV0
热点推荐
(追記) (追記ここまで)
最新更新

我们

合作

网站

信息

ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。

AltStyle によって変換されたページ (->オリジナル) /