Php 下周四的放映日期

Php 下周四的放映日期,php,date,timestamp,strtotime,Php,Date,Timestamp,Strtotime,我使用以下代码显示每个下周四的日期 现在我遇到了以下问题:今天是星期四,但在今天结束之前,我不想显示下周的日期。这怎么可能 每周四我们从晚上7点到10点值班。因此,我需要显示今天的日期为例。晚上10点后,我可以显示下周四的日期(例如30.11。) 当前代码: $timestmp = strtotime('next thursday'); setlocale(LC_TIME, "de_DE"); $next = strftime('%A, %d.%m.%Y', $timestmp); 那

我使用以下代码显示每个下周四的日期

现在我遇到了以下问题:今天是星期四,但在今天结束之前,我不想显示下周的日期。这怎么可能

每周四我们从晚上7点到10点值班。因此,我需要显示今天的日期为例。晚上10点后,我可以显示下周四的日期(例如30.11。)

当前代码:

 $timestmp = strtotime('next thursday');
 setlocale(LC_TIME, "de_DE");
 $next = strftime('%A, %d.%m.%Y', $timestmp); 

那么你想在今天这个星期四演出? 然后传递到strotime,昨天的时间戳。那样

 $timestmp = strtotime('next thursday', strtotime('-1 day'));
然后它将从昨天开始寻找下周四,也就是今天

如果(日期('l')=='星期四'){ 今天是星期四!哇 } 否则{ $timestmp=strotime(“下周四”); 设置地点(LC_时间,“de_de”); $next=strftime(“%A,%d.%m.%Y',$timestmp); }


您可以使用一个简单的
if条件
来检查今天是否是星期四,打印今天的日期。否则,下周四打印

setlocale(LC_TIME, "de_DE");

if (date('l') == 'Thursday') {
    $thu = strftime('%A, %d.%m.%Y');
} else {
    $timestmp = strtotime('next thursday');
    $thu = strftime('%A, %d.%m.%Y', $timestmp);
}

echo $thu;

如果是星期日、星期一、星期二或星期三,则以下代码将捕获下一个星期四。如果是星期五或星期六,它会抓住最后一个星期四。如果今天是星期四,它会抓住今天

$now = new DateTime();
if ($now->format('w') < 4) {
    $now->modify('next thursday')
} elseif ($now->format('w') > 4) {
    $now->modify('last thursday')
}

echo $now->format('Y-m-d');
$now=new DateTime();
如果($now->format('w')<4){
$now->modify('下周四')
}elseif($now->format('w')>4){
$now->modify(‘上周四’)
}
echo$now->format('Y-m-d');

可能是重复的嗯,这不是我想要的。我从当地的志愿消防部门管理网站。每周四我们从晚上7点到10点值班。因此,我需要显示今天的日期为例。晚上10点后,我可以显示下周四的日期(例如30.11。)