php - 如何在两个日期之间回显几个工作日(仅限周一和周二)?
问题描述
我怎样才能像修改('下周三和周二')一样回应下周三和下周二?
如何在修改('下周三和周二')之类的两个日期之间回显下周三和下周二?
$tuesday= 'next Tuesday';
$wednesday= 'next Wednesday';
$date_from = new DateTime(date("d.m.Y", strtotime("2020-06-02")));
$date_to = new DateTime(date("d.m.Y", strtotime("2020-07-09")));
for ($datestart = clone $date_from; $datestart <= $date_to; $datestart->modify($wednesday)){
echo 'Day: '$datestart->format('Y-m-d').' Date: '.$datestart->format('Y-m-d');
}
Day: 3 Date: 2020-06-03
Day: 3 Date: 2020-06-10 ....
但我想回应:
Day: 3 Date: 2020-06-03
Day: 2 Date: 2020-06-09
Day: 3 Date: 2020-06-10
Day: 2 Date: 2020-06-16 ....
解决方案
<?php
$tuesday= 'next Tuesday';
$wednesday= 'next Wednesday';
$date_from = new DateTime(date("d.m.Y", strtotime("2020-06-02")));
$date_to = new DateTime(date("d.m.Y", strtotime("2020-07-09")));
$i=0;
for ($datestart = clone $date_from; $datestart <= $date_to;){
echo 'Day: '.$datestart->format('N').' Date: '.$datestart->format('Y-m-d')."<br>";
if($i%2==0)
{
$datestart->modify($wednesday);
}else
{
$datestart->modify($tuesday);
}
$i++;
}``
?>
**Result-:**
Day: 2 Date: 2020-06-02
Day: 3 Date: 2020-06-03
Day: 2 Date: 2020-06-09
Day: 3 Date: 2020-06-10
Day: 2 Date: 2020-06-16
Day: 3 Date: 2020-06-17
Day: 2 Date: 2020-06-23
Day: 3 Date: 2020-06-24
Day: 2 Date: 2020-06-30
Day: 3 Date: 2020-07-01
Day: 2 Date: 2020-07-07
Day: 3 Date: 2020-07-08
推荐阅读
- git - 合并手动复制到新仓库但不共享共同祖先提交的 git 仓库
- arrays - 如何将信息从数组更新到 Firebase?
- sql - UPSERT 基于具有 NULL 值的 UNIQUE 约束
- c# - WPF 数据绑定,属性值更改 UI 不刷新其内容
- python - @client.command 和 @commands.command 有什么区别
- ruby-on-rails - 在 ruby on rails app 中运行 bundle install 时无法验证 SSL 证书错误
- python - 如何在张量流 TakeDataset 上使用 file_paths?
- mongodb - MongoDB - 在不更新的情况下获取另一个字段的值
- c++ - 包含动态结构数组的结构动态数组
- javascript - 如何在执行输出之前不显示边界线?