Es gibt zwei Funktionen zum Formatieren der Uhrzeit in PHP: date() und gmdate(). Die Beschreibung in der offiziellen Dokumentation lautet:
date – Formatieren Sie eine lokale Zeit/ein lokales Datum.
gmdate – – Formatieren Sie eine GMT /UTC-Datum/Uhrzeit und Rückgabe der Greenwich Mean Time (GMT).
Unsere aktuelle Zeitzone ist beispielsweise +8, dann sollte die vom Server, der das folgende Skript ausführt, zurückgegebene Zeit wie folgt aussehen:
Die aktuelle Zeit wird als 04.01.2009 12:15:27 angenommen
echo date( 'Y-m-d H:i:s', time()); Die Ausgabe ist: 2009-01-04 12:15:27
echo gmdate('Y-m-d H:i:s', time ()); Die Ausgabe lautet: 2009-01-04 04:15:27
Dies ist jedoch nur das Ergebnis der Ausführung von PHP unter Linux+Apache. Wenn es unter Windows ausgeführt wird, geben die beiden Funktionen Folgendes zurück: 2009-01 -04 04:15: 27.
Also sollten wir eine kompatible Schreibmethode angeben, gmdate einheitlich verwenden und die aktuelle Zeitzone manuell festlegen. Die Schreibmethode wird wie folgt verbessert:
echo gmdate('Y-m-d H:i:s', time( ) + 3600 * 8 ; Die Zeit wird basierend auf der vom Benutzer eingestellten Zeitzone berechnet. In der Datenbank wird nur die von der aktuellen Zeit () generierte Zeit gespeichert Zone ist: 04.01.2009 12:15:27. Dann sehen Benutzer in der europäischen Zeitzone +2 die Veröffentlichungszeit dieser Informationen: 04.01.2009 06:15:27, sodass alle Zeiten der Informationen angezeigt werden Bitte geben Sie die Quelle für den Nachdruck an: Der Unterschied zwischen Datums- und Gmdate-Funktionen in PHP