PHP在一个表中列出本周的天数,可以通过按钮更改为显示下周或上周

PHP在一个表中列出本周的天数,可以通过按钮更改为显示下周或上周,php,Php,我正在试着让日历运行起来。尽管我对PHP不是很在行,但我还是设法创建了一个月视图日历,并且运行得很好。然而,目标岗位已经有所移动,权力将像一个每周查看日历。当他们打开时,它将在一个表中显示当前一周的所有日期,然后可以选择向前一周,然后显示下一周或向后一周。我已经为此奋斗了很多天,我的代码已经克服了复杂和混乱,而我确信一定有一个简单的解决方案 我知道这是一个很大的要求,但如果有人能给我指出正确的方向,或者给我一个简单的脚本,让我可以继续生活下去,我会非常感激 这就是我目前所拥有的 $week_nu

我正在试着让日历运行起来。尽管我对PHP不是很在行,但我还是设法创建了一个月视图日历,并且运行得很好。然而,目标岗位已经有所移动,权力将像一个每周查看日历。当他们打开时,它将在一个表中显示当前一周的所有日期,然后可以选择向前一周,然后显示下一周或向后一周。我已经为此奋斗了很多天,我的代码已经克服了复杂和混乱,而我确信一定有一个简单的解决方案

我知道这是一个很大的要求,但如果有人能给我指出正确的方向,或者给我一个简单的脚本,让我可以继续生活下去,我会非常感激

这就是我目前所拥有的

$week_number = date("W");
$year = date("Y");

if($week_number < 10){
   $week_number = "0".$week_number;
}

for($day=0; $day<=6; $day++)
{
  echo date('d-m-Y', strtotime($year."W".$week_number.$day))." | \n";
}
?>
$week_number=日期(“W”);
$year=日期(“Y”);
如果($周数<10){
$week\u number=“0”。$week\u number;
}
对于($day=0;$day)
如果点击了“下一周”按钮,我会在$week\u编号上加上1,这样我就成功地启动并运行了它(我没有包括一个自我发布表单的一部分,以保持脚本的简单性)它一直运行良好,直到年份发生变化,因为周数持续超过53周,我还没有添加使$year增加或减少的方法,这就是它出错的地方。

是你的朋友(PHP5.3+)

试一试:

<?php

$weekModifier = 0;

$date = new DateTime();

if($date->format('N') !== 1) {
    $date->sub(new DateInterval('P'. $date->format('N') . 'D'));
}

$interval = new DateInterval('P'.abs($weekModifier).'W');

if($weekModifier > 0) {
    $date->add($interval);  
} else {
    $date->sub($interval);  
}

for($i = 1; $i <= 7; $i++) {
    echo $date->add(new DateInterval('P1D'))->format('l Y-m-d') . "<br>\n"; 
}

?>

将本周保留为0将使用本周。否则,您可以简单地使用1、2、3、、1、-2、-3等


也许这篇文章很有帮助:您好,是的,我在显示一周的天数方面没有问题,我的问题是转到下一周或上一周