개발/php
[php] php strtotime 날짜 계산 오류 해결 방법
효벨
2024. 11. 1. 01:00
728x90
반응형
[php] php strtotime 날짜 계산 오류 해결 방법
php 에서
날짜 계산을할때 strtotime 과 date 함수를 이용해서 특정시간 이전 혹은 이후의 시간을 계산하고는 합니다!
그렇게 계산을 하던중
지금 현재 2024년 10월 31일인데
한달전의 날짜를 알고싶어서 아래와 같이 사용하고 echo 로 출력을 했더니
// now ymd : 2024-10-31
$date = date("Y-m-d", strtotime("-1 months"));
echo $date;
// result : 2024-10-01
2024-10-01 이 나오는 겁니다!
이건 뭔가 하고 한참을 삽질하닥 검색을 해봤더니...
이럴때는 아래와 같이 사용을 하라고 되어있네요!
$base = strtotime(date('Y-m',time()) . '-01 00:00:01');
echo date('Y-m-d',strtotime('-1 month', $base));
// result : 2024-09-01
위처럼 베이스 날짜는 현재달의 1일 1초로 설정해놓고 그걸 기준으로 1달전의 데이터를 출력했더니
정상적으로 2024-09-01 이 나옵니다!
버그인지 뭔지..
잘 되던게 갑자기 날짜가 꼬인듯해서 한참을 삽질했네요 ㅠ
참고들 하세요!
반응형