2011-08-11 5 views
0

'아시아/도쿄'라는 특정 시간대에 datetime 개체가 있습니다. 나는 이것의 출력 형식 YYYY-MM-DD'P'HH:mm:ss$dt = DateTime->now(time_zone => 'Asia/Tokyo'); 를 사용하여이 날짜 (P은 구분 기호)특정 시간대에서 특정 시간대를 에포크 초로 변환하는 방법

는 초 획기적인하는 날짜에이를 변환하는 펄 스크립트를 도와주세요를 얻고있다.

+3

는'$ DT-> epoch' 당신을 위해 작동하지 않는 이유는 무엇입니까? – friedo

답변

4
DateTime->now(time_zone => 'Asia/Tokyo')->epoch 

은 물론, 당신은 당신이 now를 사용하는 경우 사용자가 지정하는 시간대에 상관없이 같은 결과를 얻을 것이다, time의 출력과 동일 할 것입니다.


이 모든 (현재) 동시에 참조 :

>perl -MDateTime -E"say time" 
1313046840 

>perl -MDateTime -E"say DateTime->now(time_zone => 'Asia/Tokyo')->epoch" 
1313046840 

>perl -MDateTime -E"say DateTime->now(time_zone => 'America/New_York')->epoch" 
1313046840 

이 다른 시간을 참조하십시오

>perl -MDateTime::Format::Strptime -E"say DateTime::Format::Strptime->new(pattern => '%F %T', time_zone => 'Asia/Tokyo')->parse_datetime('2011-08-11 13:00:00')->epoch" 
1313035200 

>perl -MDateTime::Format::Strptime -E"say DateTime::Format::Strptime->new(pattern => '%F %T', time_zone => 'America/New_York')->parse_datetime('2011-08-11 13:00:00')->epoch" 
1313082000 
+0

@Balaji, 예제 추가. – ikegami

관련 문제