【发布时间】:2016-10-31 17:59:36
【问题描述】:
我刚刚偶然发现了一些非常奇怪的东西。我使用“Carbon”包来生成 DateTime 对象。
我使用以下代码为 2016 年 9 月的开始创建一个 DateTime 字符串:
Carbon::create()->month(9)
如果我使用 Laravel 的“dd()”函数输出它,我会收到以下输出:
Carbon\Carbon {
+"date": "2016-10-01 10:22:36.000000"
+"timezone_type": 3
+"timezone": "Europe/Vienna"
}
它返回 10 月 1 日,而不是 9 月 1 日!每隔一个月就可以正常工作。
我也试过这些:
Carbon::now()->month(9)
(new Carbon)->month(9)
但我得到了同样的错误结果。
是否有其他人遇到此错误,或者有人可以尝试一下并告诉我您是否收到相同的输出?还是我只是做错了什么,即使我什么都想不出来?
提前致谢。
【问题讨论】:
-
我和你在同一条船上...stackoverflow.com/questions/40339101/…
-
这似乎与今天是第 31 天和闰年跳过了整整一个月有关。我真的很想看到这个烦人的错误的解决方案,因为它搞砸了我的整个调度应用程序。
-
说实话,我真的不知道该怎么办。
-
我想我在 Github 问题跟踪器讨论中找到了一个解决方案,如果它有效,请告诉我。
标签: php datetime php-carbon