Php 如何以年和月为单位获取UTC时间
我想知道如何以年和月为单位获得UTC时间? 我从一个网站上截取了UTC日期和时间,但我被要求显示完整的UTC格式,例如(2014-07-31 22:00:00),我现在面临的问题是,我们当前的时间比UTC时间提前1小时 以下是我使用的代码:Php 如何以年和月为单位获取UTC时间,php,date,datetime,utc,Php,Date,Datetime,Utc,我想知道如何以年和月为单位获得UTC时间? 我从一个网站上截取了UTC日期和时间,但我被要求显示完整的UTC格式,例如(2014-07-31 22:00:00),我现在面临的问题是,我们当前的时间比UTC时间提前1小时 以下是我使用的代码: $date_time = date("Y-m", $time_now) . "-". $wxInfo['DAY'] . " " . $wxInfo['HOUR'] . ":" . $wxInfo['MINUTE'] . ":00"; 如您所见,对于Y-m
$date_time = date("Y-m", $time_now) . "-". $wxInfo['DAY'] . " " . $wxInfo['HOUR'] . ":" . $wxInfo['MINUTE'] . ":00";
如您所见,对于Y-m(年和月),我使用本地时间,但使用UTC网站上的日、小时、分钟值。此$date_时间每半小时更新一次,如果更新时间为“2014-07-31 23:00:00”,则我们当前的时间为“2014-08-01 00:00:00”。因此,我的代码将输出:
2014-08-31 23:00:00
如何转换为正确的UTC年和月 用于
John Conde建议的解决方案适用于在特定时区显示日期和时间 在您的情况下,我认为您可能希望在整个脚本中将时区设置为UTC,以便对date()和DateTime->format()的所有调用都自动使用UTC。这非常简单:在脚本的开头,写下:
date_default_timezone_set('UTC');
然后,PHP将在任何地方使用UTC作为时区。请参阅手册:如何测试正确性?我的意思是,我可以更改DateTime()=“2014-08-01 00:00:00”来测试代码,看看是否可以得到正确的月份是07而不是08?只需将日期/时间传递到第一个
DateTime()
作为参数:$DateTime=new DateTime('2014-08-01 00:00:00')代码>
date_default_timezone_set('UTC');