Ich manipuliere meine Daten mit dem php Carbon Paket in meiner Laravel App. Ich habe einige seltsame Ergebnisse, wenn ein Datum (x Tage in der Zukunft) zu erzeugen versuchenCarbon gibt das falsche Datum zurück
Bitte nehmen Sie sich einen Blick auf diesen Code:
$start_date = Carbon::tomorrow('Europe/London');
$end_date = $start_date->addDays($tier->duration_days);
Log::debug('Carbon::now(): '.Carbon::now());
Log::debug('Carbon::tomorrow(Europe/London): '.Carbon::tomorrow('Europe/London'));
Log::debug('$start_date: '.$start_date);
Log::debug('$end_date: '.$end_date);
Der obige Code wird aus den folgenden Debug-Zeilen drucken:
2017-04-17 21:46:31] local.DEBUG: Carbon :: now(): 2017-04-17 21:46:31
[2017.04.17 21.46.31 ] local.DEBUG: Kohlenstoff :: morgen (Europa/London): 2017-04-18 00:00:00 [2017-04-17 21:46:31] local.DEBUG: $ start_date: 2017.05.16 00.00.00 [2017.04.17 21.46.31] local.DEBUG: $ end_date: 2017-05-16 00:00:00
Verwendung von Kohlenstoff: : tomorrow() gibt die korrekten Daten aus, wobei jedoch $ start_time verwendet wird, das technisch die gleiche Funktion verwendet, gibt das falsche Datum zurück. Kann mir jemand sagen, was hier schief gehen könnte?
FYI Ich habe Europa/London als meine Zeitzone in meiner config/app.php
Datei eingestellt.
'AddDays()' modifiziert das Carbon-Objekt .... [Carbon-AddDays(), aber ohne Modyfing vorhandene Instanz] (https://laracasts.com/discuss/channels/laravel/carbon-adddays-but -without-modyfing-existing-instance) $ end_date = $ start_date-> copy() -> addDays ($ tier-> duration_days); ' –