php strtotime Zeitzonenproblem, in manchen Jahren liegen die UTC-Zeitzone und die PRC-Zeitzone 9 Stunden auseinander
刘强
刘强 2019-01-29 10:33:31
0
5
1440
$timeStr='1987-5-4';
echo '测试时间:'.$timeStr;
echo PHP_EOL;
$prcTime=strtotime($timeStr);
echo 'PRC时间:';
echo $prcTime;
echo PHP_EOL;
date_default_timezone_set('UTC');
$utcTime=strtotime($timeStr);
echo 'UTC时间:';
echo $utcTime;
echo PHP_EOL;
echo 'UTC与PRC时间相差:'.(($utcTime-$prcTime)/3600).'小时';
echo PHP_EOL;

Ergebnis:

Testzeit: 1987-5-4

PRC-Zeit: 547052400

UTC-Zeit: 547084800

UTC- und PRC-Zeitunterschied: 9 Stunden


Getestet, 19 87-19 1991 Der Unterschied zwischen Datum, UTC- und PRC-Zeit beträgt 9 Stunden.

php-Version ist

PHP 7.1.9 (cli) (erstellt: 30. August 2017 18:34:46) ( ZTS MSVC14 (Visual C++ 2015) x64 )

Copyright (c) 1997-2017 The PHP Group

Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies


刘强
刘强

Antworte allen(1)
刘强

忘了提问题了,请问这是什么原因造成的? 怎么处理这个bug?

  • Antwort 我们在东八区,PHP时间是从0区开始的所以会差八个小时(PS:初中地理知识没学好),解决办法: 1、修改PHP配置文件 2、使用date_default_timezone_set
    jesse Autor 2019-01-29 13:13:39
  • Antwort 嗯,是相差8小时,但是 这里是PRC东八区与UTC 相差9小时,而且只是部分年份(1987年-1991年),
    刘强 Autor 2019-01-31 08:54:36
  • Antwort 我前2天也遇到这个问题了,然后群里讨论了下,大概得出结论是 因为 夏时制 导致的。
    唐润 Autor 2020-01-20 09:33:17
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!