문제

나는 mktime에 간단한 문제가있다.나는 다음 코드를 찾았습니다 :

echo date("Y-M-d", mktime(11, 45, 0, 01, 05, 2014)); echo ", ";
echo date("Y-M-d", mktime(11, 45, 0, 01, 06, 2014)); echo ", ";
echo date("Y-M-d", mktime(11, 45, 0, 01, 07, 2014)); echo ", ";
echo date("Y-M-d", mktime(11, 45, 0, 01, 08, 2014)); echo ", ";
echo date("Y-M-d", mktime(11, 45, 0, 01, 09, 2014)); echo ", ";
.

는 다음과 같은 출력을 생성합니다.

2014-Jan-05, 2014-Jan-06, 2014-Jan-07, 2013-Dec-31, 2013-Dec-31
.

날짜 함수는 더 읽기 쉽게 만들 수 있습니다.MkTime 자체가 반환 한 타임 스탬프는 잘못되었습니다. 전용 변화하는 일은 그날의 날이므로 7과 8이되는 날 사이의 불연속성이있는 이유가 있는지 모르겠습니다..

시간, 분 및 두 번째가 잘못된 날을 변경 한 결과가 정확한 시간 소인을 변경하지는 않음을 확인했습니다.즉, 위의 마지막 두 줄은 똑같은 시간 소인 (1388508300)을 반환하지만 시간을 변경하면 시간 소인의 상대적인 변경이 예상대로 예상됩니다.

컨텍스트가 중요한 경우, 이것은 WordPress 설치에서 PHP 5.3에서 실행됩니다.

도움이 되었습니까?

해결책

정수 0..로 시작하는 정수 리터럴은 8 진수 표기법에 있습니다.08 8 진수 이상이 존재하지 않으면 완전히 잘못된 값을 얻을 수 있습니다.다섯 번째 날에 , 5, 05 등이 아닌

다른 팁

일 (및 달) 전에 선도적 인 0을 제거하십시오

echo date("Y-M-d", mktime(11, 45, 0, 1, 5, 2014)); echo ", ";
echo date("Y-M-d", mktime(11, 45, 0, 1, 6, 2014)); echo ", ";
echo date("Y-M-d", mktime(11, 45, 0, 1, 7, 2014)); echo ", ";
echo date("Y-M-d", mktime(11, 45, 0, 1, 8, 2014)); echo ", ";
echo date("Y-M-d", mktime(11, 45, 0, 1, 9, 2014)); echo ", ";
.

동작으로 참조

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top