我正在使用Carbon PHP为我的项目构建一个小的API。我需要得到一个月的最后一个工作日,在我的上下文中,这应该是每个月的最后一个工作日。
这是我目前的做法:
$lastWorkingDay = Carbon::parse('2022-04-27')->lastOfMonth();
if ($lastWorkingDay->isWeekend()) {
$lastWorkingDay = Carbon::parse('2022-04-27')->lastOfMonth()->previousWeekday();
}
我在这里遇到的问题是,在四月份,这个月的最后一天是周末,那么我的previousWeekday
方法似乎得到的是星期六而不是星期五?
1条答案
按热度按时间xytpbqjk1#
这会容易得多如果
modify是Carbon从DateTime继承的方法。
这也可以不使用Carbon而只使用DateTime。这是little test。
如果在应用程序中更频繁地需要该代码,则可以在Carbon中为其定义宏。
lastWorkingDayOfMonth()现在可以像任何其他方法一样在Carbon中的任何地方使用。