-1 monday输出是这周一的时间,很奇怪
                                                                                                                                                                                                 回复内容:                                                                                  -1 monday输出是这周一的时间,很奇怪
因为老外认为“this monday”是下周一,“last monday”是本周一
直接-2 monday就好了,或者monday last week
date('y-m-d', strtotime('-' . (6+date('w')) . ' days'));
-7 days
last week
通常分两步走,先取得上周的任意一天,再去找周一,就像求月末是找到下个月的1号,然后-1 day一样。
这个还是写一个通用的方法吧
function last_monday($timestamp=0,$is_return_timestamp=true){     static $cache ;     $id = $timestamp.$is_return_timestamp;     if(!isset($cache[$id])){         if(!$timestamp) $timestamp = time();         $thismonday = this_monday($timestamp) - /*7*86400*/604800;         if($is_return_timestamp){             $cache[$id] = $thismonday;         }else{             $cache[$id] = date('y-m-d',$thismonday);         }     }     return $cache[$id]; }
date('w')得到当前周几,由于周一至周六分别是1-6,周日是0。当值为0的时候,上周一是13天前。其余就是date('w')+6天前。
$days = date('w')==0?13:date('w')+6;echo date('y-m-d',time()-$days*86400);
这里看到了文档链接描述
echo 上个周一:.date(y-m-d,strtotime(last monday)).
;
$time = strtotime(-7 day);
$timetest =date(y-m-d h:i:sa, $time);
   
 
   