我正在尝试使用 PHPdate_sun_info
函数获取全天太阳某些位置的时间信息:
目前我正在使用类似于中的代码文档 http://php.net/manual/en/function.date-sun-info.php.
$sun_info = date_sun_info(strtotime('today'), 40.42, 74.0);
foreach ($sun_info as $key => $val) {
echo "$key: " . date("H:i:s", $val) . "<br>";
}
输出是:
sunrise: 20:50:20
sunset: 07:45:03
transit: 02:17:41
civil_twilight_begin: 20:22:45
civil_twilight_end: 08:12:38
nautical_twilight_begin: 19:51:01
nautical_twilight_end: 08:44:22
astronomical_twilight_begin: 19:19:28
astronomical_twilight_end: 09:15:55
这显然是错误的。
我不确定为什么会发生这种情况。任何帮助将非常感激。
我以为这与时区有关?如果是这样我应该如何纠正?服务器的时区设置为 America/New_York,这将比 GMT 晚 5 小时,但即使考虑到这一点,时间也不可能是正确的,除非我计算错误。
我认为你混淆了数字。40.42, 74.0
翻译为吉尔吉斯斯坦山区的一个点。你可能的意思是40.42, -74
(大约)纽约?
至于为什么会发生这种情况,似乎该函数确实对时区敏感,但没有正确记录:
- 吉尔吉斯斯坦 时间 GMT+6
- 纽约是 GMT-5
这相当于 11 个小时的差异。
当时的日出时间是当地时间7点50分,20点50分纽约时间。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)