Maison  >  Questions et réponses  >  le corps du texte

problème de fuseau horaire php strtotime, certaines années, le fuseau horaire UTC et le fuseau horaire RPC diffèrent de 9 heures

$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;

Résultat :

Heure du test : 1987-5-4

Heure PRC : 547052400

Heure UTC : 547084800

Différence horaire UTC et PRC : 9 heures


Testé 19 87-19 1991 La différence entre la date, l'heure UTC et PRC sont de 9 heures. La version

php est

PHP 7.1.9 (cli) (construite : 30 août 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


刘强刘强2111 Il y a quelques jours1488

répondre à tous(5)je répondrai

  • 刘强

    刘强2019-01-29 10:34:30

    J'ai oublié de poser la question, quelle en est la raison ? Comment gérer ce bug ?

    répondre
    0
  • jesse

    Nous sommes dans le huitième district Est, et le temps PHP commence à partir du district 0, il y aura donc une différence de huit heures (PS : je n'ai pas bien appris la géographie au collège). 1. Modifier le fichier de configuration PHP 2. Utilisez date_default_timezone_set

    jesse · 2019-01-29 13:13:39
    刘强

    Eh bien, il y a une différence de 8 heures, mais voici la différence entre le huitième district Est de la RPC et UTC, qui est de 9 heures, et ce n'est qu'une partie de l'année (1987-1991).

    刘强 · 2019-01-31 08:54:36
    唐润

    J'ai également rencontré ce problème il y a deux jours, et après en avoir discuté en groupe, j'ai grossièrement conclu qu'il était dû à l'heure d'été.

    唐润 · 2020-01-20 09:33:17
  • Annulerrépondre