PHP:将UTC日期转换为秒 - 不适用于strtotime()
问题描述:
我有这个UTC日期2017-07-16 12:00:07.8 UTC
(即调用$dateconvert
),我想将其转换为秒。 我试图使用strtotime()
,但它在UTC时间内返回秒数,再移除两个小时,我不明白为什么。PHP:将UTC日期转换为秒 - 不适用于strtotime()
我在意大利,在这里日期为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
答
尝试和设置您的date_default_timezone_set()
您正确的时区,并看看是否能解决您的问题。有时候你的php实例会默认错误的时区。
如果你把所有的部分放在单独的变量中,为什么不使用['gmmktime()'](http://php.net/manual/en/function.gmmktime.php)将它们转换成时间戳? – rickdenhaan
@ rickdenhaan与gmmktime()的作品!如果你写一个答案,我会接受它;) – Borja