Carbon PHP的previousWeekday方法返回周末日期问题求助
Carbon PHP获取每月最后一个工作日的正确姿势
你当前的写法不仅冗余,还可能出现预期外的结果。直接用Carbon自带的方法就能一步到位拿到当月最后一个工作日:
可行代码示例
// 方式一:给lastOfMonth传weekday参数 $lastWorkingDay = Carbon::parse('2022-04-27')->lastOfMonth('weekday'); // 方式二:用modify的自然语言语法 $lastWorkingDay = Carbon::parse('2022-04-27')->modify('last weekday of this month');
关于你遇到的问题
你说调用previousWeekday()得到周六而非周五,大概率是当月最后一天为周日的情况——部分旧版本Carbon中,周日调用previousWeekday()会先回退到周六(不符合预期的工作日逻辑)。不过不管版本差异,用上面的内置方法都能绕开手动判断的坑,直接返回正确的当月最后一个工作日。
内容的提问来源于stack exchange,提问作者Ryan H
相关产品推荐
相关产品推荐

