在5月找到第3个星期天的脚本

时间:2013-04-23 20:21:03

标签: php date

我正在寻找一个PHP例程来查找我们每年的家庭聚会日期,所以我不必在日历上手动查看它并每年在网站上输入它。

日期是5月的第3个星期日之前。

我搜索了但没有找到如何在一个月内找到第三个星期天的答案。我只找到了一些关于如何在当月找到太阳的东西。不同的问题。

3 个答案:

答案 0 :(得分:2)

您可以将strtotime()relative date format一起使用。

答案 1 :(得分:0)

你可以使用内置的php strtotime

<?php
$s = 'Monday, September 28, 2009';
$time = strtotime($s);
$start = strtotime('last sunday, 12pm', $time);
$end = strtotime('next saturday, 11:59am', $time);
$format = 'l, F j, Y g:i A';
$start_day = date($format, $start);
$end_day = date($format, $end);
header('Content-Type: text/plain');
echo "Input: $s\nOutput: $start_day - $end_day";
?>

所以实际上每次将$time更新为新的

时,你可以使用3次“下一个星期日”

答案 2 :(得分:0)

我认为应该这样做:

$time = strtotime('may 1 +3 sunday');

[编辑]哎呀,忘了回去一天:

$time = strtotime('may 1 +3 sunday -1 day');

[Edit2]循环,每年:

for ($year = 2013; $year <= 2020; $year++) {
    echo date('r', strtotime("may $year +3 sunday -1 day")), "\n";
}

输出:

Sat, 18 May 2013 00:00:00 -0400
Sat, 17 May 2014 00:00:00 -0400
Sat, 16 May 2015 00:00:00 -0400
Sat, 14 May 2016 00:00:00 -0400
Sat, 20 May 2017 00:00:00 -0400
Sat, 19 May 2018 00:00:00 -0400
Sat, 18 May 2019 00:00:00 -0400
Sat, 16 May 2020 00:00:00 -0400