Heim >Backend-Entwicklung >PHP-Tutorial >PHP-Time()-Problem
time() ermittelt die Serverzeit. Ist die in China erhaltene Zeit also dieselbe wie in den USA? Da bei der Entwicklung ein Problem aufgetreten ist, wurde die Kaufaktivität der Produktgruppe in China eingestellt, es können jedoch weiterhin Zeitstempel verwendet werden, und die Startzeit der Datenbank ist konsistent. Ist es ein Problem mit time()? ?
time() ermittelt die Serverzeit. Ist die in China erhaltene Zeit also dieselbe wie in den USA? Da bei der Entwicklung ein Problem aufgetreten ist, wurde die Kaufaktivität der Produktgruppe in China eingestellt, es können jedoch weiterhin Zeitstempel verwendet werden, und die Startzeit der Datenbank ist konsistent. Ist es ein Problem mit time()? ?
Der Zeitstempel ist die Gesamtzahl der Sekunden von 00:00:00 GMT am 1. Januar 1970 bis heute.
Dieser Wert hat also nichts mit der Zeitzone zu tun. Beispielsweise ist 1471827600 die Pekinger Zeit (2016-08-22T09:00, East 8th District). , dann ist derselbe Zeitstempel in Ost. Die Zeit in Distrikt 7 ist 2016-08-22T08:00.
Die Antworten oben und unten sind beide richtig, der Zeitstempel hat nichts mit der Zeitzone zu tun. Wenn der Zeitstempel jedoch in ein Datums- und Zeitformat umgewandelt wird, hängt er mit der Zeitzone zusammen. .. Ich entschuldige mich dafür, dass ich den Fragesteller in die Irre geführt habe.
<code class="php">$time = time(); date_default_timezone_set('America/Los_Angeles'); echo time() . PHP_EOL; echo date('Y-m-d H:i:s', $time) . PHP_EOL; date_default_timezone_set("UTC"); echo time() . PHP_EOL; echo date('Y-m-d H:i:s', $time) . PHP_EOL;</code>
time()
Was Sie erhalten, ist ein Zeitstempel, und Zeitstempel haben keine Zeitzone und sind alle in GMT. Sofern also die Serverzeiten Ihrer beiden Server nicht inkonsistent sind, ist das erhaltene time()
konsistent.
Die Zeitzonen sind unterschiedlich
Die einheitliche Zeitzone ist UTC, ich bin auch darauf gestoßen
Die Funktion time() erhält einen Zeitstempel und es gibt kein Zeitzonenkonzept.
Wenn Sie jedoch zwei Server im In- und Ausland verwenden, legen Sie denselben Zeitstempel für den Beginn des Verkaufs und denselben Zeitstempel für das Ende fest Der Verkauf im Inland begann zu diesem Zeitpunkt noch nicht. (Die Grundlage für Spekulationen ist, dass der Betreff sagte, dass er im Inland und nicht im Ausland endet und die Verkäufe für die gleiche Zeit andauern.) Weil der Zeitstempel umgewandelt wird Wenn Sie also gleichzeitig verkaufen und gleichzeitig enden möchten, müssen Sie die Zeit an beiden Orten in Greenwich Mean Time (den Ursprung des Zeitstempels) umrechnen. , holen Sie sich dann verschiedene Zeitstempel und fügen Sie die gewünschte Verkaufszeit hinzu