我操纵我的日期使用我的Laravel应用程序中的PHP Carbon包。碳返回错误的日期错误
$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);
上面的代码将打印出以下调试行:
我试图生成日期(x天在未来)请看看这个代码时有一些怪异的结果
2017-04-17 21:46:31] local.DEBUG:Carbon :: now():2017-04-17 21:46:31
[2017-04-17 21:46:31 ] local.DEBUG:碳::明天(欧洲/伦敦): 2017-04-18 00:00:00 [2017-04-17 21:46:31] local.DEBUG:$ start_date: 2017年5月16日00:00:00 [2017年4月17日21点46分31秒] local.DEBUG:$ END_DATE: 2017年5月16日00:00:00
采用碳: :明天()将打印出正确的日期,但使用技术上使用相同函数的$ start_time会返回错误的日期。 有人可以建议什么可能会出错吗?
仅供参考我在我的config/app.php
文件中将欧洲/伦敦设置为我的时区。
'addDays()'修改碳对象.... [碳addDays(),但没有modyfing现有实例(https://laracasts.com/discuss/channels/laravel/carbon-adddays-but -without-modyfing-existing-instance)'$ end_date = $ start_date-> copy() - > addDays($ tier-> duration_days);' –