我想要日期,例如当前星期从星期一到星期三,上星期从上星期星期一到上星期三
我已经尝试过此代码
function last_to_last_week_date(){
$previous_week = strtotime("-2 week +1 day");
$start_week = strtotime("last monday",$previous_week);
$end_week = strtotime("next sunday",$start_week);
$start_week = date("Y-m-d",$start_week);
$end_week = date("Y-m-d",$end_week);
return $start_week.' '.$end_week ;
}
function last_week_date(){
$previous_week = strtotime("-1 week +1 day");
$start_week = strtotime("last monday",$previous_week);
$end_week = strtotime("next sunday",$start_week);
$start_week = date("Y-m-d",$start_week);
$end_week = date("Y-m-d",$end_week);
return $start_week.' '.$end_week ;
}
但是,我已经收到了上周的日期和上至上周的日期
有人可以帮我吗
答案 0 :(得分:1)
您只需在代码中修复2行:
$end_week = strtotime("next wednesday",$start_week); // <-- "next wednesday"
对于当前日期:
$previous_week = strtotime("+1 day");
输出:
2020-01-20 2020-01-22
2020-01-27 2020-01-29
干燥
您可以简化代码。在两种方法中的每一种中使用一种方法:
function optimDate($prev_w){
$start_week = strtotime("last monday",$prev_w);
$end_week = strtotime("next wednesday",$start_week);
$start_week = date("Y-m-d",$start_week);
$end_week = date("Y-m-d",$end_week);
return $start_week.' '.$end_week ;
}
这两种方法变得像
function last_week_date(){
return optimDate(strtotime("-1 week +1 day"));
}
function curr_week_date(){
return optimDate(strtotime("+1 days"));
}
实际上,这也可以进行优化。