2010-12-16 18 views

Antwort

1

Wenn Sie Ihre Zeitstempel in ganzzahliger Form speichern, können Sie einfach die Ausgabe von time() speichern, was der Unix-Epoch-Wert ist, der auf UTC basiert. Dies macht die Zeitzone irrelevant, sodass Sie die beiden Werte immer subtrahieren können, um die Differenz in Sekunden zu erhalten.

$t1 = time(); 

// ... später ...

$t2 = time(); 
$timeDiff = $t2 - $t1; 
echo "The difference is " . $timeDiff . " seconds."; 
+0

Ich habe gelesen "Local time as string kann durch strftime() und lokalen Zeitstempel (wenn überhaupt benötigt) von mktime().", Obwohl meine mktime() - time() ist 0? – Damian

+0

Stellen Sie sicher, dass Ihr Server (insbesondere Ihre php.ini-Datei) auf Ihre gewünschte Zeitzone eingestellt ist, wenn Sie bestimmte Zeitzonen anstelle von UTC verwenden möchten. Ich sage das nur nebenbei, weil ich dasselbe versuchte und nicht lange herausfinden konnte, warum meine Zeit anders war als das, was der Server zeigte (traurig, aber wahr). – ServAce85

1

Ich stimme Antwort von BTX. Um ein besseres Verständnis für Zeitzonen, UTC und andere zeitbezogene Probleme zu bekommen, lesen Sie bitte this article. Obwohl es hauptsächlich mit Java zu tun hat, werden dort die wichtigsten Konzepte beschrieben, die nicht sprachenspezifisch sind.

Verwandte Themen