PHP:将 UTC 日期转换为秒数 - 不适用于 strtotime()
PHP: convert UTC Date into seconds - not works with strtotime()
我有这个 UTC 日期 2017-07-16 12:00:07.8 UTC
(调用 $dateconvert
),我想将其转换为秒。
我尝试使用 strtotime()
,但它在 UTC 中 returns 秒又删除了两个小时,我不明白为什么。
我在意大利,这里的日期是 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()
把它转换成时间戳。 mktime()
的 "gm" 版本知道它正在接收 GMT/UTC 日期并将相应地处理它。
我有这个 UTC 日期 2017-07-16 12:00:07.8 UTC
(调用 $dateconvert
),我想将其转换为秒。
我尝试使用 strtotime()
,但它在 UTC 中 returns 秒又删除了两个小时,我不明白为什么。
我在意大利,这里的日期是 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()
把它转换成时间戳。 mktime()
的 "gm" 版本知道它正在接收 GMT/UTC 日期并将相应地处理它。