PHP에서 IS_DST 매개 변수를 사용하여 올바른 타임 스탬프를 얻는 방법은 무엇입니까?

StackOverflow https://stackoverflow.com/questions/696552

  •  22-08-2019
  •  | 
  •  

문제

다음 속성을 제공하는 MKTime 메소드를 사용하여 UNIX 타임 스탬프를 작성하고 있습니다.

print_r(mktime(0,0,0,3,1,2009));
print_r(mktime(null,null,null,3,1,2009) / 60 / 60 / 24) . "days");`

이것은 결과를 만듭니다

1235862000

14303.958333333 days

이것은 14304 일이어야합니다. 이 경우 문제는 겨울입니다. IS_DST 매개 변수를 사용할 수 있으며 0 (기본 -1)을 사용하면 결과적으로 14304 일을 올바르게 제공합니다.

그러나 때때로 이것은 다음과 같은 문제를줍니다.

엄격한 표준 : mktime () [function.mktime] : IS_DST 매개 변수가 더 이상 사용되지 않습니다.

나는 그것이 무엇을 의미하는지, 내가 그것에 대해 무엇을 할 수 있는지 전혀 모른다. 누군가가 있습니까? 겨울 시간이 끔찍한 머리가 아프기 때문에 ....

도움이 되었습니까?

해결책

사용 gmmktime.

다른 팁

date("I", time());

일광 절약이면 1을 줄 것입니다.

PHP 매뉴얼 페이지에서 :

"날짜/시간 기능에 대한 모든 호출은 시간대가 유효하지 않은 경우 e_notice가 생성되고/또는 시스템 설정 또는 TZ 환경 변수를 사용하는 경우 e_strict 메시지가 생성됩니다. 또한 참조하십시오. date_default_timezone_set ()"

아마 당신이 사용해야한다는 것을 의미합니다 date_default_timezone_set () 이전에 IS_DST 매개 변수를 건너 뛰십시오

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