2016-01-22 54 views
1

我正在使用谷歌方向API進行包括流量在內的兩個地點之間的估計持續時間計算。我正在使用出發時間:2016年1月22日星期五時間:中午12點(IST)。根據谷歌API,如果我們需要的交通時間,那麼我們需要包括出發時間的UTC和出發時間應該是當前時間或更大。見下面的鏈接Google方向API時區從IST轉換爲UTC

https://developers.google.com/maps/documentation/directions/intro?hl=en

現在我的問題是,我的發車時間爲「週五22月-2016時間:下午12:00(北京時間)」(1453464000)時,我打算把它轉換到UTC那麼它將是「2016年1月22日星期五時間:6:30 AM」(1453444200)。

現在,當我經過這段時間在谷歌上的API調用,然後它顯示錯誤:

[error_message] => departure_time is in the past. Traffic information is only available for future and current times. This is because this time has been passed in IST. 

這是因爲在這種情況下,UTC比IST小。現在我怎麼能管理這個?

見我下面

$start = 'Vijay Nagar, Indore, Madhya Pradesh, India'; 
$finish = 'Regal Cir, New Agarwal Nagar, Indore, Madhya Pradesh, India'; 

$url = 'https://maps.googleapis.com/maps/api/directions/xml?origin=' .$start . '&destination=' . $finish . '&sensor=false&departure_time=1453533717&mode=driving&traffic_model=pessimistic&key=AIzaSyC7h7m5bRs-BZwk0XTXEQTB74dZujeLzZs'; 

代碼請提出解決方案。

回答

0

您的時間戳已關閉。

1453464000 == 2016-01-22 12:00:00 UTC == 2016-01-22 17:30:00 India 
1453444200 == 2016-01-22 06:30:00 UTC == 2016-01-22 12:00:00 India 

爲06:30印度時,這將是:

2016-01-22 06:30:00 India == 2016-01-22 01:00:00 UTC == 1453424400 

印度爲5小時30分鐘比UTC的。此外,無論何時以數字形式表示時間戳,幾乎總是以UTC爲基礎的已經

+0

是的印度從UTC前進5小時30分鐘,所以每當我們將印度時間轉換爲UTC時,它總是會比印度小(我的意思是印度的過去時間),因爲我會通過這個時間Google方向API時,它總是會顯示錯誤,如「指定時間已過」 –

相關問題