php - 从 2 个给定日期中找到多少个星期日?

标签 php datetime

从 01-01-2009 到 02-23-2009

如何找出这几天之间有多少个星期日??

最佳答案

像这样的事情怎么样:

$date = strtotime('2009-01-01 next sunday');
$dateMax = strtotime('2009-02-23');

$nbr = 0;
while ($date < $dateMax) {
  var_dump(date('Y-m-d', $date));
  $nbr++;
  $date += 7 * 24 * 3600;
}

var_dump($nbr);

你得到的输出是:

string '2009-01-04' (length=10)
string '2009-01-11' (length=10)
string '2009-01-18' (length=10)
string '2009-01-25' (length=10)
string '2009-02-01' (length=10)
string '2009-02-08' (length=10)
string '2009-02-15' (length=10)
string '2009-02-22' (length=10)

对于每个星期天的日期,以及:

int 8

星期日的个数

(我很快查了一下,好像那些日期确实是星期天)


这段代码的作用是:

  • 首先,获取2009-01-01之后第一个星期日的日期
  • 然后,只要当前日期在2009-02-23之前,就迭代
  • 在每次迭代中,增加 7*24*3600 秒(每周 7 天,每天 24 小时,每小时 3600 秒)

注意:我已经更改了您的日期格式,使用 YYYY-MM-DD,而不是 DD-MM-YYY;这是通常使用的格式——因此,使用这个格式可能是个好主意,以确保 strtotime 正常工作。 (不确定它是否适合您的格式)

关于php - 从 2 个给定日期中找到多少个星期日?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1321668/

相关文章:

Linux时间转换的php函数

java - 不支持的时间类型异常 : Unsupported field: InstantSeconds

php - 如何在服务器上保持本地时间(使用 JS 和 PHP)?

java - cqengine 按日期时间比较

python - 时间戳日期格式无法转换为浮点型

php - 如何礼貌地询问远程网页是否更改?

php - 在 MySQL 中查找相似/重复的字段值(Sphinx 相关)

php - MySql Yii2 如何显示单元格值?

php - Zf2 Db Sessions 插入但不更新数据库中的 session

mysql - Highchart 导航器数据格式