PHP打印/存储特定日期

时间:2016-12-17 15:05:35

标签: php

我在定义打印方面遇到一些困难,并在PHP中存储特定的星期几。它实际上是:

下周二,从当前日期时间周五午夜开始。

这适用于以下流程的在线订单:

订单截止到午夜的截止时间;和 周二发布了以下内容。

我不能在下周二使用,因为周六和周二之间的订单将在下周发送。

有什么想法/建议?

一旦我拥有了这个核心,我就需要针对不同的运输区域进行一些调整,或者允许公共假期 - 可能是通过CSV文件。

感谢。

1 个答案:

答案 0 :(得分:1)

这个变体应该可以满足您的需求:

$now       = new DateTimeImmutable();
$dayOfWeek = $now->format("w");
$addDays   = new DateInterval("P" . ($dayOfWeek == 6?10:9 - $dayOfWeek) . "D");
print $now->add($addDays)->format("Y/M/d");

使用的概念方法:识别"现在"。确定一周的哪一天"现在"是。打印最近即将到来的星期五之后的星期二的日期。

附加说明:

  1. 如果$ now是星期五,则认为最近的星期五 今天
  2. 周六需要稍微专业的处理 星期几的编号
  3. 希望有所帮助