2011-05-05 9 views
1

전체,Unix 타임 스탬프를 Locale 시간대로 변환

유닉스 타임 스탬프를 현지 시간대로 날짜와 시간으로 변환하려면 어떻게해야합니까? epoch converter가 올바르게 내가 php.ini 파일을 보았다
GMT: Thu, 21 Apr 2011 08:32:04 GMT
Your timezone: Thu Apr 21 2011 04:32:04 GMT-0400 (Eastern Daylight Time)

로 변환하고 기본 시간대는 UTC 반면 타임 스탬프 = 1,303,374,724,716를 들어, PHP의 date ('r', $timestamp) 기능은 나에게 Sun, 16 May 2032 22:11:37 +0000을 제공합니다. 왜 GMT/UTC 시간과 일치하지 않는지 이해할 수 없습니다. 아무도 내 로컬 시간대, 즉 New_York로 전환하도록 도와 줄 수 있습니까?

답변

3

사용자가 지정한 타임 스탬프가 밀리 초 단위이기 때문입니다.

$timestamp = floor(1303374724716/1000); 

그리고 모든 것이 예상대로 작동합니다 :

는 마십시오.

1

워드 프로세서 말 :

타임 스탬프는 선택 사항이며 기본값은 time()의 값입니다.

당신이

print time(); 

를 실행하는 경우 1304640077 같은 번호를 받게됩니다.

전달하려는 번호보다 1000 배 작습니다.

즉, 밀리 초가 아닌 초 단위로 값을 전달해야합니다.

시간대를 설정하려면 date_default_timezone_set을 사용하십시오. php.ini의 파일에

date_default_timezone_set('America/New_York'); 

또는 설정 date.timezone.

관련 문제