Ich benutze PHP 5.6.17 auf Debian 8. Nach dem Einrichten von owncloud, habe ich festgestellt, dass die Protokolle, die selbst geschrieben von owncloud sind (nicht von Apache) hat falsche Zeit Zonen.php Zeitzone: DateTime :: createFromFormat ignoriert Zeitzone
suchte ich dies ein wenig, wie scheint, dass die Zeile:
DateTime::createFromFormat("U.u", number_format(microtime(true), 4, ".", ""), 'Europe/Berlin');
Das ist nicht jede Zeitzone Einstellung schert. Anstatt der Zeit für Europa/Berlin (+ 1/+ 2) bekomme ich immer die Zeit für UTC.
In /etc/php5/apache2/php.ini
ich "date.timezone = "Europe/Berlin"
gesetzt und die Systemzeit (debian) ist auch korrekt.
Auch wenn ich laufen ungefähr wie unten ich die gleiche Leistung (UTC) erhalten:
$time=DateTime::createFromFormat('U.u', sprintf('%.6F', microtime(true)), new DateTimeZone('UTC'));
echo $time->format('c') . "\n";
$time=DateTime::createFromFormat('U.u', sprintf('%.6F', microtime(true)), new DateTimeZone('Europe/Berlin'));
echo $time->format('c') . "\n";
Irgendwelche Ideen zu diesem Problem?
Yeah Danke! Habe es für meinen Testcode arbeiten lassen. Jetzt muss ich überprüfen, was das Problem mit owncloud ist. Vielen Dank Mutch – Sebastian
Wenn Sie mir danken wollen, upvote und akzeptiere meine Antwort. :) – Narf
Erstellen von DateTime-Objekt aus timestamp = ein weiterer WTF-Moment in PHP. –