Mein Client benötigt einen Systembericht, in dem sein Plugin Serverdetails ausführt. Dies bedeutet, dass ich die SERVER-Zeitzone abrufen muss. Arbeiten mit WordPress. Versucht, aber das funktioniert nicht auf jedem Server.
$date = new DateTime();
$date->setTimezone(new DateTimeZone(ini_get('date.timezone')));
Dies führt bei einigen Servern zu einem schwerwiegenden Fehler. Haben Sie eine allgemeine Funktion zum Abrufen der Serverzeitzone? Alle Vorschläge werden sehr geschätzt.
Überprüfen Sie zuerst Ihre PHP-Version.
– Ali
25. Mai 2016 um 7:03 Uhr
Dann müssen Sie die PHP-Version des Kunden mit php_info() überprüfen.
– Ali
25. Mai 2016 um 8:35 Uhr
James
Versuche dies:
$date = new DateTime();
$timeZone = $date->getTimezone();
echo $timeZone->getName();
Die Funktion date_default_timezone_get() gibt die Standardzeitzone zurück, die von allen Datums-/Uhrzeitfunktionen im Skript verwendet wird.
das gibt mir UTC. Aber UTC ist ein Zeitstandard, keine Zeitzone
– Darksymphonie
2. Januar 2021 um 22:36 Uhr
Es gibt das nicht zurück ‘Ursprünglich’ Zeitzone. Es gibt die zurück ‘aktueller Standard’ Zeitzone. Wenn Sie oder jemand anderes in Ihrem Code-Stream die Zeitzone von der Systemzeitzone entfernt eingestellt hat, erhalten Sie diese. code php > echo date_default_timezone_get(); Pacific/Auckland php > date_default_timezone_set(‘UTC’); php > echo date_default_timezone_get(); UTC-php > code
– Lummo
20. September 2021 um 3:37 Uhr
Um dem Fehler auszuweichen, den diese Funktion liefert, platzieren Sie @ vor dem Funktionsnamen … so date_default_timezone_set(@date_default_timezone_get());
Überprüfen Sie zuerst Ihre PHP-Version.
– Ali
25. Mai 2016 um 7:03 Uhr
Dann müssen Sie die PHP-Version des Kunden mit php_info() überprüfen.
– Ali
25. Mai 2016 um 8:35 Uhr