Heim > Artikel > Backend-Entwicklung > So lösen Sie das 8-Stunden-Zeitunterschiedproblem in PHP
Ich habe vor ein paar Tagen ein Problem entdecktDatum("Y-m-d G:i T",Uhrzeit()) Die entnommene Zeit ist immer unterschiedlich Von der Ortszeit aus hat es 8 Stunden gedauert, aber mein System war eindeutig auf China Standard Time (GMT+8) eingestellt, und ich habe endlich das Problem gefunden.
Es stellt sich heraus, dass ab php5.1.0 die Option date.timezone zu php.ini hinzugefügt wurde, die standardmäßig deaktiviert ist
Das heißt, die angezeigte Zeit (egal Welcher PHP-Befehl wird verwendet) Der Unterschied zwischen der Greenwich Mean Time
und unserer Zeit (Peking-Zeit) beträgt genau 8 Stunden. Es gibt drei Methoden, um die normale Zeit wiederherzustellen.
1. Der einfachste Weg ist, php5.1 oder höher zu verwenden.
2. Wenn Sie php.ini verwenden müssen, müssen Sie die Zeitangabe initialisieren
date_default_timezone_set (XXX);
3 bis
, ein für alle Mal kann nur php.ini geändert werden. Öffnen Sie php.ini und suchen Sie nach date.timezone. Entfernen Sie das Semikolon davor
= und fügen Sie danach XXX hinzu. Starten Sie den http-Dienst neu (z. B. Apache2 oder iis usw.)
Bezüglich XXX, die auf dem chinesischen Festland verfügbaren Werte sind: Asien/Chongqing, Asien/Shanghai, Asien/Urumqi (in der Reihenfolge Chongqing, Shanghai, Urumqi)
Verfügbar in Hongkong und Taiwan: Asien/Macau, Asien/ Hong_Kong, Asien/Taipeh (in der Reihenfolge Macau, Hongkong, Taipei)
Und Singapur: Asien/Singapur
Ausländer scheinen Peking verpasst zu haben
Andere verfügbare Werte sind: Etc/GMT-8, Singapur , Hongkong, VR China
Was ist VR China? VR China ist die Volksrepublik China. -_-
Die oben genannten Regionen sind unter GMT-8, die ich aus der offiziellen PHP-Handbuchdatei zusammengestellt habe. Möglicherweise gibt es einige Auslassungen
Das obige ist der detaillierte Inhalt vonSo lösen Sie das 8-Stunden-Zeitunterschiedproblem in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!