分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 技术分享

php递归方法

发布时间:2023-09-06 02:29责任编辑:熊小新关键词:递归

<?php
header("Content-type:text/html;charset=utf-8");
$city=array(
??array(‘id‘=>1,‘name‘=>‘北京‘,"pid"=>0), ?
??array(‘id‘=>2,‘name‘=>‘广东‘,"pid"=>0), ?
??array(‘id‘=>3,‘name‘=>‘海淀区‘,"pid"=>1), ?
??array(‘id‘=>4,‘name‘=>‘昌平区‘,"pid"=>1), ?????
??array(‘id‘=>5,‘name‘=>‘上地‘,"pid"=>3), ?
??array(‘id‘=>6,‘name‘=>‘西二旗‘,"pid"=>3), ?
??array(‘id‘=>7,‘name‘=>‘回龙观‘,"pid"=>4), ?
??array(‘id‘=>8,‘name‘=>‘霍营‘,"pid"=>4), ?
??array(‘id‘=>9,‘name‘=>‘深圳‘,"pid"=>2), ?
??array(‘id‘=>10,‘name‘=>‘广州‘,"pid"=>2), ?
??array(‘id‘=>11,‘name‘=>‘福田‘,"pid"=>9), ?
??array(‘id‘=>12,‘name‘=>‘南山‘,"pid"=>9), ?
);
/*
$res=array(
?????array(‘id‘=1,‘name‘=>‘北京‘,"pid"=>0),
?????array(‘id‘=3,‘name‘=>‘海淀区‘,"pid"=>1),
?????array(‘id‘=5,‘name‘=>‘上地‘,"pid"=>3),
?????array(‘id‘=6,‘name‘=>‘西二旗‘,"pid"=>3),
?????array(‘id‘=4,‘name‘=>‘昌平区‘,"pid"=>1),
?????array(‘id‘=7,‘name‘=>‘回龙观‘,"pid"=>4), ?
?????array(‘id‘=8,‘name‘=>‘霍营‘,"pid"=>4),
?????array(‘id‘=2,‘name‘=>‘广东‘,"pid"=>0),
?????array(‘id‘=9,‘name‘=>‘深圳‘,"pid"=>2),
?????array(‘id‘=11,‘name‘=>‘福田‘,"pid"=>9), ?
?????array(‘id‘=12,‘name‘=>‘南山‘,"pid"=>9),
?????array(‘id‘=10,‘name‘=>‘广州‘,"pid"=>2),
);
*/
function tree($arr,$pid=0){
static $res=array();
foreach($arr as $v){
if($v[‘pid‘]==$pid){
//说明找到,先保存,继续递归查找
$res[]=$v;
tree($arr,$v[‘id‘]);
}
}
return $res;
}
echo "<pre>";
var_dump($city);
echo "<hr>";
$result=tree($city);
var_dump($result);

*********************************************************************************************************

在模型类中的使用情形:

/**
????* @param ?array ?$arr [要排序的数组]
????* @param ?integer $pid [父id]
????* @return array ?????[排序好的数组]
????*/
public function tree($arr,$pid=0,$level=0){
       static $res=array();
       foreach($arr as $v){
       if($v[‘pid‘]==$pid){
          //说明找到,先保存,然后在递归查找

       $v[‘level‘]=$level;

         $res[]=$v;
         $this->tree($arr,$v[‘cat_id‘],$level+1);
      }
   }
  return $res;
}

php递归方法

原文地址:https://www.cnblogs.com/itfz/p/10259977.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved