PHP:将UTC日期转换为秒 - 不适用于strtotime()

时间:2017-07-16 13:55:08

标签: php date datetime timezone utc

我有 UTC日期 2017-07-16 12:00:07.8 UTC(调用$dateconvert),我想将其转换为秒。 我尝试使用strtotime(),但它在UTC中返回秒数,再删除两个小时,我不明白为什么。

我在意大利和这里日期 UTC + 2 ,也许strtotime()读取$dateconvert意大利时区,并将其转换为秒,删除该2小时? 可能吗?

$anno_emsc= 2017;
$mese_emsc= 7;
$giorno_emsc= 16;
$ora_emsc= 12;
$minuto_emsc= 0;
$secondo_emsc= 7;


$dataconvert= strtotime($anno_emsc.'-'.$mese_emsc.'-'.$giorno_emsc.' '.$ora_emsc.':'.$minuto_emsc.':'.$secondo_emsc)+0; 

输出

1500199207 // strtotime removed 2 hours

2 个答案:

答案 0 :(得分:1)

由于您已经了解所有部分,因此可以使用gmmktime()将其转换为时间戳。 " gm"版本mktime()知道它已收到GMT / UTC日期并会相应处理。

答案 1 :(得分:0)

尝试将date_default_timezone_set()设置为正确的时区,看看是否能解决您的问题。有时您的php实例将默认为错误的时区。