您的位置:首页 > 编程语言 > PHP开发

php递归的例子

2017-01-13 19:04 169 查看
   function loop($data, $id, $param, $ret){

        static $ret = array();

        //$deep用于记录当层级

//        static $deep = 0;

//        $deep++;

        foreach($data as $key => $val){

            if(!empty($val[$param['endtime']]) && is_array($val)){

                //如果是下一层的数据优先替代

//                if($deep>$ret['deep']||empty($ret['deep'])){

//                    if($params['type']=='op_version_id'){

//                        $ret['op_version_id'] = $id;

//                    }else{

//                        $ret['module'] = $id;

//                    }

//                    $ret['endtime'] = $val[$params['endtime']];

//                    $ret['email'] = $params['email'];

//                    $ret['deep']=$deep;

//                    $i++;

//                }

                //如果小于下一条结束时间

                if($val[$param['endtime']] < $ret['endtime'] || empty($ret['endtime'])){

                    if($param['type']=='op_version_id'){

                        $ret['op_version_id'] = $id;

                        $ret['args']='/'.$param['args'][0];

                    }else{

                        $ret['module'] = $id;

                    }

                    $ret['endtime'] = $val[$param['endtime']];

                    $ret['email'] = $param['email'];

//                    $ret['deep']=$j;

                }  

            }    

            if(is_array($val)){

                self::loop($val, $id, $param, $ret);

            }

        }

        return $ret;

    }  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: