-1 월요일 출력이 이번주 월요일인데 참 이상하네요
-1 월요일 출력이 이번주 월요일인데 참 이상하네요
외국인들은 "이번 월요일"이 다음 월요일이고 "지난 월요일"이 이번 월요일이라고 생각하기 때문이죠
그냥 "-2 월요일", 즉 "지난주 월요일"
date('월-일', strtotime('-' . (6+date('w')) . '일'));
-7 days
last week
일반적으로 두 단계로 이루어집니다. 먼저 마지막 주의 임의의 날짜를 구한 다음 월요일을 구합니다. 마치 월말을 구하는 것이 다음 달 1일을 구하고 그 다음 -1일을 구하는 것과 같습니다.
이에 대한 일반적인 방법을 작성해 보겠습니다
<code>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]; }</code>
date('w')는 월요일부터 토요일이 각각 1-6이고 일요일이 0이므로 현재 요일을 가져옵니다. 값이 0이면 지난 월요일은 13일 전입니다. 나머지는 date('w')+6일 전입니다.
<code>$days = date('w')==0?13:date('w')+6; echo date('Y-m-d',time()-$days*86400);</code>
여기에서 문서 링크 설명을 확인하세요
echo "지난 월요일:".date("Y-m-d",strtotime("지난 월요일"))."
";
$time = strtotime("-7일");
$timetest =date("연월일 h:i:sa", $time);