2012-04-25 1 views
1

나는 데이터베이스에 시간대가 UTC 인 날짜를 저장하고 있으며 날짜는 며칠/시간/분입니다. 그런 다음 나는 지금 현재와 주어진 날짜 사이의 시간 차이를 계산해야하며, 서로 다른 시간대가있을 수 있음을 명심하십시오.두 날짜의 차이에서 날짜 개체 가져 오기, 시간대에 따라 달라짐

나는 다음과 같이 해왔지만 시간대는 고려하지 않았기 때문에 잘못되었다.

$interval = date_create('now')->diff(date_create($listing_end_date)); 
//$interval->d = days 
//$interval->h = hours 
//$interval->i = minutes 

어떻게하면 시간대를 고려하여 위 작업을 수행 할 수 있습니까?

답변

2

date_create에 두 번째 인수를 전달하여 $listing_end_date에있는 날짜로 표시되는 시간대를 알려야합니다. 예를 들어 문자열이 UTC에 있다고 가정하면 다음과 같습니다.

$interval = date_create('now')->diff(date_create($listing_end_date, 
               new DateTimeZone('UTC'))); 
+0

"지금"여전히 잘못된 부분일까요? –

+0

또는 $ interval = date_create ('now', DateTimeZone :: UTC) -> diff (date_create ($ listing_end_date, DateTimeZone :: UTC)) –

+0

@ hsmoore.com - 데이터베이스의 날짜가 UTC임을 나타냅니다. '지금'으로 걱정할 시간대가 없습니다. 지금은 지금입니다. –

관련 문제