【发布时间】:2013-05-18 04:43:22
【问题描述】:
我有一个日历,我想让事件在每月的某个工作日重复。一些例子是:
- 每月的第四个星期二重复
- 每月的第二个星期五重复一次
- 等等……
我需要的是能够找出本月到目前为止已经过去了多少工作日(例如星期二)。
I found some code 返回星期一过去了多少个。
$now=time() + 86400;
if (($dow = date('w', $now)) == 0) $dow = 7;
$begin = $now - (86400 * ($dow-1));
echo "Mondays: ".ceil(date('d', $begin) / 7)."<br/>";
这很好用,但我如何才能确定任何工作日?我似乎无法理解代码来完成这项工作。
【问题讨论】:
-
我会找到您需要的工作日的第一次出现 [通过从月初开始循环,在最坏的情况下直到 7 日],然后只需添加
7*(n-1)days 即可找到n-th. -
“我似乎无法理解代码来完成这项工作。” --- 那是因为琐碎的代码应该从头开始编写
-
查看this answer。