网络上如何推广网站,网站运行方案,网站内容管理流程图,手机浏览器 网页版#需求是获取两个时间内 年周 、年季度、年半年的二级联动# 找了半天也找不到什么有用的信息 就自己简单写了一个 思路是先获取年的列表再去嵌套查询
根据前端VUE提供的格式嵌套 public function getDate(){$leixing Request::param(leixing);$larr array(1,2,3,4);if(empty(…#需求是获取两个时间内 年周 、年季度、年半年的二级联动# 找了半天也找不到什么有用的信息 就自己简单写了一个 思路是先获取年的列表再去嵌套查询
根据前端VUE提供的格式嵌套
public function getDate(){$leixing Request::param(leixing);$larr array(1,2,3,4);if(empty($leixing)){echo apireturn(201,类型不正确,);die;}else{if(!in_array($leixing,$larr)){echo apireturn(201,类型不正确,);die;}}$start 2023-01-01;$start_time strtotime($start);$end_time time();$start_year date(Y,$start_time);$end_year date(Y,$end_time);$year_arr array();if($start_year $end_year){array_push($year_arr,$start_year);}else{//获取年份for($i$end_year;$i$start_year;$i--){array_push($year_arr,(string)$i);} }$array array();foreach ($year_arr as $k $v){if($leixing 1){$week_arr array();//取周数if($end_year $v){$endzhounum date(W,time()86400);if($start_year $v){$startzhounum intval(date(W,$start_time86400));}else{$startzhounum 1;}//获取周数for($i$endzhounum;$i$startzhounum;$i--){array_push($week_arr,第.$i.周);} }else{$year $v.-01-01;$time strtotime($year);$yearLastDay strtotime(-1 day, strtotime(1 year, $time));$endzhounum date(W,$yearLastDay);if($start_year $v){$startzhounum date(W,$start_time86400);}else{$startzhounum 1;}//获取周数for($i$endzhounum;$i$startzhounum;$i--){array_push($week_arr,第.$i.周);} }$array[$v.年] $week_arr;}else if($leixing 2){$quarter_arr array();//取周数if($end_year $v){$endjinum ceil(date(n,time()86400)/3);if($start_year $v){$startjinum ceil(date(n,$start_time86400)/3);}else{$startjinum 1;}//获取周数for($i$endjinum;$i$startjinum;$i--){array_push($quarter_arr,第.$i.季度);} }else{$year $v.-01-01;$time strtotime($year);$yearLastDay strtotime(-1 day, strtotime(1 year, $time));$endjinum ceil(date(n,$yearLastDay)/3);if($start_year $v){$startjinum ceil(date(n,$start_time86400)/3);}else{$startjinum 1;}//获取周数for($i$endjinum;$i$startjinum;$i--){array_push($quarter_arr,第.$i.季度);} }$array[$v.年] $quarter_arr;}else if($leixing 3){$banyear_arr array();//取周数if($end_year $v){$endjinum ceil(date(n,time()86400)/6);if($start_year $v){$startjinum ceil(date(n,$start_time86400)/6);}else{$startjinum 1;}//获取周数for($i$endjinum;$i$startjinum;$i--){if($i 1){array_push($banyear_arr,上半年);}else{array_push($banyear_arr,下半年);}} }else{$year $v.-01-01;$time strtotime($year);$yearLastDay strtotime(-1 day, strtotime(1 year, $time));$endjinum ceil(date(n,$yearLastDay)/6);if($start_year $v){$startjinum ceil(date(n,$start_time86400)/6);}else{$startjinum 1;}//获取周数for($i$endjinum;$i$startjinum;$i--){if($i 1){array_push($banyear_arr,上半年);}else{array_push($banyear_arr,下半年);}} }$array[$v.年] $banyear_arr;}else if($leixing 4){$array $year_arr;}}echo apireturn(200,success,$array);die;}
leixing的值为1 查询年-周、2为年-季度、3年-半年、4年
运行结果如下(年-季度)
{status: 200,msg: success,data: {2023年: [第4季度,第3季度,第2季度,第1季度]}
}
#开始时间目前是写死的 可以根据自己需求修改#