답변 3개
</p>
<p><?php
$today = '2025-01-14 08:33:00';
echo date('Y-m-d', strtotime('-2 monday', strtotime($today)));
echo date('Y-m-d', strtotime('-1 sunday', strtotime($today)));</p>
<p>
간단하게 하시려면 이렇게 하셔도 될 것 같네요.
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
자문자답... 이거 완전 노가다네요. <===그렇게 하는 것이 아닙니다
답변 미채택 상태로 만들어버린 질문이라 답변 하지않으려다가 답변 드립니다
-------------------------------------다음처럼 해보세요
last Sunday, last week Monday ㅋ
$ddk="2025-01-14 08:33:00"; // 2025-01-06(월), 2025-01-12(일) $dd = strtotime($ddk); $dd1 = date("Y-m-d", strtotime("last week Monday" ,$dd)); $dd2 = date("Y-m-d", strtotime("last Sunday" ,$dd));
echo "$dd1 // $dd2 ";
$ddk="2025-01-23 12:33:00"; // 2025-01-13(월), 2025-01-19(일) $dd = strtotime($ddk); $dd1 = date("Y-m-d", strtotime("last week Monday" ,$dd)); $dd2 = date("Y-m-d", strtotime("last Sunday" ,$dd));
echo " $dd1 // $dd2";
답변에 대한 댓글 1개
채택을 못해드려서 죄송하네요.
너무 늦게 확인했어요.. 감사합니다 이 코드 활용해서 사용하면 될꺼같아요!!
댓글을 작성하려면 로그인이 필요합니다.
$year = 2025; $month = 01; $day = 19;
// 특정 날짜의 타임스탬프값 구하기 $targetDateTimeStamp = mktime(0, 0, 0, $month, $day, $year);
// 요일 찾기 $dayOfWeek = date('w', $targetDateTimeStamp);
// 하루의 초(second) $secondOfOneDay = 60 * 60 * 24;
switch ($dayOfWeek) { case 0: // 일요일 $monday = $targetDateTimeStamp- ($secondOfOneDay * 6); $friday = $targetDateTimeStamp ; break; case 1: // 월요일 $monday = $targetDateTimeStamp- ($secondOfOneDay * 7); $friday = $targetDateTimeStamp - ($secondOfOneDay * 1); break; case 2: // 화요일 $monday = $targetDateTimeStamp - ($secondOfOneDay * 8); $friday = $targetDateTimeStamp - ($secondOfOneDay * 2); break; case 3: // 수요일 $monday = $targetDateTimeStamp - ($secondOfOneDay * 9); $friday = $targetDateTimeStamp - ($secondOfOneDay * 3); break; case 4: // 목요일 $monday = $targetDateTimeStamp - ($secondOfOneDay * 10); $friday = $targetDateTimeStamp - ($secondOfOneDay * 4); break; case 5: // 금요일 $monday = $targetDateTimeStamp - ($secondOfOneDay * 11); $friday = $targetDateTimeStamp - ($secondOfOneDay * 5); break; case 6: // 토요일 $monday = $targetDateTimeStamp - ($secondOfOneDay * 12); $friday = $targetDateTimeStamp - ($secondOfOneDay * 6); break; }
if (isset($monday) && isset($friday)) { echo "{$year}년 {$month}월 {$day}일의 이 전주 월요일과 금요일의 날짜"; echo ' '; echo '월요일 : ' . date("Y-m-d", $monday); echo ' '; echo '일요일 : ' . date("Y-m-d", $friday); } else { echo "월요일 부터 금요일의 날짜를 입력하세요."; }
답변에 대한 댓글 1개
이거 완전 노가다네요..
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
정확히 이전주 월요일과 일요일이 출력되는거 같지는 않습니다.
예를 들어보면
$today = '2025-01-13 08:33:00';
echo date('Y-m-d', strtotime('-2 monday', strtotime($today)));
echo "-";
echo date('Y-m-d', strtotime('-1 sunday', strtotime($today)));
날짜를 1월13일로 했을경우 전주 월요일~ 일료일은 2025-01-06 - 2025-01-12 인데
2024-12-30 - 2025-01-12가 출력됩니다.
제가 좀 고민해겠습니다. 감사합니다.