我使用 Carbon(PHP 库)将日期设置为日期。但我希望它不会到下个月,而是停止和月底。
例子:
Carbon::create(2018, 2, 27, 0, 0, 0)->day(31);
我越来越
2018-03-03 00:00:00
但是我需要
2018-02-28 00:00:00
当您经营几个月Carbon给您
->subMonthsNoOverflow()
和 - >addMonthsNoOverflow()
这真的很有帮助,但没有像这样设置一天的东西。
最佳答案
从 Carbon 2.0 开始,他们添加了一个方法 setUnitNoOverflow($unit, $value, $overflowUnit)
但它仍然没有记录。
我设法通过这样做获得了 2019-02-28
Carbon::parse('2019-02-01')->setUnitNoOverflow('day', 31, 'month')->format('Y-m-d')
Carbon\Carbon @1551398399 {#3013
date: 2019-02-28 23:59:59.999999 UTC (+00:00),
}
或者,您可以使用
addUnitNoOverflow
和 subUnitNoOverflow
Issue github ——
Source
关于php - 设置没有溢出的日期(使用 PHP Carbon),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51295845/