我在将 PHP strtotime 转换为不同的时区时遇到问题。我的代码很简单:
<?php
date_default_timezone_set("Europe/Bratislava");
echo date("H:i",strtotime("20:00 America/New_York"));
?>
此代码返回:02:00。但它应该返回 14:00。
你能帮我解决这个问题吗?
此代码返回:02:00。但它应该返回 14:00。
不,没错。您正在从纽约晚上 8 点(由于 DST 而当前为 UTC-4)转换为欧洲/布拉迪斯拉发时区(由于 DST 目前为 UTC+2)。
所以:
New York: 8pm
UTC: Midnight
Bratislava: 2am
如果您尝试从欧洲/布拉迪斯拉发时间转换为纽约时间,则需要切换时区 ID。