在日期后获取特定的工作日日期

时间:2018-09-03 17:13:29

标签: laravel octobercms php-carbon

我正在尝试实施在每个区域的一周中特定日期进行的交付过程。因此,在周二和周四交货的地区,我需要能够根据产品上市的日期获得下一个合格日期。因此,如果我要在5日阅读,O需要获取下一个星期二或星期四的日期。

我开始在Carbon上实现它,但是我创建了许多遍历日期,测试日期并检查其是否有效的循环。获取产品可用性日期并在每天之后检查它是否是星期二或星期四……等等///我敢肯定,使用Carbon,会有更好的方法。

有关如何操作的任何提示?

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

定义日期:

$date = Carbon::now();

现在您必须开始工作:

$day = $date->dayOfWeekIso

如果$date是星期一,那么您将得到一个整数,该整数将是1。这是因为:1(星期一),2(星期二),...,7(星期日)。

现在有了这个数字,您只需要应用一些简单的逻辑即可。

如果您得到的数字是2(星期二),则您需要在$date上增加两天才能获得交货日期:

$delivery_date = $date->addDays(2);

如果您的一天等于4(星期四),那么您需要在$date上增加6天,这样下个星期二就会出现:

$delivery_date = $date->addDays(6);

我想这就是您想要的!希望对您有所帮助!