- App
- WoltLab Suite Core
Hallo!
Wenn die WCF.class.php nicht auf die PHP.ini zugreifen kann, überschreibt sie die eingestellten Zeitzonen. Auch die aus der options.inc.php.
Code: WCF.class.php
// fix timezone warning issue
if (!@ini_get('date.timezone')) {
@date_default_timezone_set('Europe/London');
}
Das gibt gerade bei der Pluginentwicklung erhebliche Probleme, was ich schon selbst feststellen musste.
Mein Vorschlag wäre, bei obigem Fallback auf die Variable TIMEZONE (Europe/Berlin) der options.inc.php zurückzugreifen.
So habe ich es herausgefunden:
Da meine Scripte nach 00:00 Uhr bei date('Y-m-d') undgmdate('Y-m-d') immer einen Tag zurückhingen habe ich mich auf die Suche nach der Ursache gemacht.
Die eingestellten Zeitzonen:
- Server PHP.ini : "Europe/Berlin"
- options.inc.php / TIMEZONE: "Europe/Berlin"
- ACP: UTC+01:00, Amsterdam, Berlin, ...
- Profil: UTC+01:00, Amsterdam, Berlin, ...
Erst als ich manuell die WCF.class.php editiert und Europe/London zu Europe/Berlin geändert habe, lieferten date() und gmdate() die richtigen Ergebnisse.
Beste Grüße,
Less