Wie bekomme ich die aktuelle Windows-Zeit in einem PHP-Skript?Windows-Zeit in PHP bekommen
Verwenden time()
scheint nicht zu funktionieren, da es Zeitzone bewusst ist und ignoriert, ob DST tatsächlich aktiviert ist oder nicht auf dem Server. Z. B. wenn die Zeitzone auf "America/Los_Angeles" gesetzt ist, aber DST deaktiviert ist (Windows-Maschine), wenn das heutige Datum 1. September ist, dann kann die Windows-Zeit 13 Uhr sein, aber die PHP time()
gibt 2 PM zurück.
Wie kann ich die Windows-Zeit des Servers erhalten? (mit PHP 5.2.14).
Wiedergabe des Problems
- Set Zeitzone "Amerika/Los_Angeles" und deaktivieren Sie die "Sommerzeit" aktivieren. Stellen Sie das Datum auf 1. September 2010 um 16:00:00 Uhr ein.
- Erstellen Sie ein einfaches PHP-Skript mit den folgenden, dann laufen
echo date_default_timezone_get(), date("H:i:s", time());
Der Ausgang Amerika/Los_Angeles 17.00.00. Beachten Sie die Differenz von 1 Stunde aufgrund der Sommerzeit.
'time()' gibt eine Zeitzone-neutral UNIX-Zeitstempel. Wie stellen Sie fest, dass es um eine Stunde aus ist? – deceze
Was sagt 'date_default_timezone_get()'? Kannst du etwas Code zeigen? Wie stellen Sie fest, dass 'time()' ausgeschaltet ist? –
'date (" r ")' sollte Ihnen bereits die lokale Zeit entsprechend den Systemeinstellungen und der Zeitzone geben, während 'gmdate (" r ")' die GMT-Version ist. Andernfalls könnte es sich um ein ['php.ini' Problem] (http://de3.php.net/manual/en/datetime.configuration.php) handeln. – mario