使用 openweathermap 获取当前本地时间
Get current local time using openweathermap
我正在使用 openweathermap api 从不同位置获取天气。
从这里我收到:
"sys":{"type":2,"id":2008110,"country":"CH","sunrise":1633585192,"sunset":1633626144},"timezone":7200
但我不知道如何使用 php...
获取本地时间
API 提供 UTC 时间戳和时区偏移量。
$sunrise = 1633585192;
$timezoneOffset = 7200; //Seconds
如果 DateTime 对象是从时间戳创建的,则时区始终为 UTC。
$dt = date_create("@".$sunrise);
要获取本地时间,必须将对象转换为正确的时区。
$hhmm = sprintf("%+03d:%02d",(int)($timezoneOffset/3600),$timezoneOffset%3600); //+02:00
$dt->setTimeZone(new DateTimeZone($hhmm));
//"2021-10-07 07:39:52.000000"
现在对象具有所需的本地时间和正确的时区。
我正在使用 openweathermap api 从不同位置获取天气。 从这里我收到:
"sys":{"type":2,"id":2008110,"country":"CH","sunrise":1633585192,"sunset":1633626144},"timezone":7200
但我不知道如何使用 php...
获取本地时间API 提供 UTC 时间戳和时区偏移量。
$sunrise = 1633585192;
$timezoneOffset = 7200; //Seconds
如果 DateTime 对象是从时间戳创建的,则时区始终为 UTC。
$dt = date_create("@".$sunrise);
要获取本地时间,必须将对象转换为正确的时区。
$hhmm = sprintf("%+03d:%02d",(int)($timezoneOffset/3600),$timezoneOffset%3600); //+02:00
$dt->setTimeZone(new DateTimeZone($hhmm));
//"2021-10-07 07:39:52.000000"
现在对象具有所需的本地时间和正确的时区。