如何更改Darksky API请求的时间格式?

时间:2018-10-24 19:23:34

标签: javascript php api

我使用Darksky API获取Yii 2.0中的天气信息。

这是向Darksky发送请求的方法,

https://api.darksky.net/forecast/[key]/[latitude],[longitude],[time]

当我在UNIX时间中使用变量time(例如1540407992)时,它运行良好。 但是我想以日期格式time使用YYYY-mm-dd H:i:s(例如2018-10-24 19:06:32)而不将其转换为UNIX时间。

有可能吗?请给我正确的答案。

2 个答案:

答案 0 :(得分:2)

根据API文档,有可能:

  

所需时间要么是UNIX时间(即从午夜开始的秒数   (格林尼治标准时间1970年1月1日)或以下格式的字符串:   [YYYY]-[MM]-[DD] T [HH]:[MM]:[SS] [时区]。时区应为   省略(指所请求位置的本地时间),Z   (指的是格林尼治标准时间),或者+ [HH] [MM]或-[HH] [MM]表示与   格林尼治标准时间(GMT)以小时和分钟为单位。时区仅用于确定   请求时间;响应将始终相对于   当地时区。

因此,您需要的格式为[YYYY]-[MM]-[DD]T[HH]:[MM]:[SS],例如您的示例2018-10-24 19:06:32变成了2018-10-24T19:06:32,带有可选的时区。

答案 1 :(得分:0)

我在应用程序中使用了此工具,并阅读了上文中提到的Darksky api文档和Angular DatePipe https://angular.io/api/common/DatePipe的文档。只是以为我会分享我使用的方法。 <h5>{{ day.time * 1000 | date: 'fullDate' }}</h5> 这将显示完整日期,例如2020年8月17日星期一。