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;
}
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;
}
相关文章推荐
- PHP 递归小例子笔记
- PHP不用递归实现无限分级的例子分享
- PHP递归生成树的一个小例子
- PHP不用递归实现无限分级的例子分享
- 一个php作的文本留言本的例子(五)
- php正则表达式教程 (有结合例子)
- PHP 存取 MySQL 数据库的一个例子
- AJAX+PHP的简单例子
- 使用"函数递归"实现基于php和MySQL的动态树型菜单
- PHP正则表达式教程 (有结合例子) [转载]
- 一个oracle+PHP的查询的例子
- 一个php作的文本留言本的例子(三)
- 一个php作的文本留言本的例子(六)
- 使用函数递归实现基于php和MySQL的动态树型菜单
- 一个php作的文本留言本的例子(四)
- 使用函数递归实现基于php和MySQL的动态树型菜单
- 一个PHP+MSSQL分页的例子
- 一个利用Squid Cache 的PHP配置例子
- 一个php作的文本留言本的例子(二)
- 一个php作的文本留言本的例子(三)