是否可以使用 php 每周自动更新日期?
例如,我有一个每周一更新的每周预测。标题将显示为“6 月 28 日星期五的预测”。
<h1>- Forecast for Friday June 28th -</h1>
然后在下一个星期一,我想将标题中的日期自动更新为下一个星期五。
这可能用php吗?
是否可以使用 php 每周自动更新日期?
例如,我有一个每周一更新的每周预测。标题将显示为“6 月 28 日星期五的预测”。
<h1>- Forecast for Friday June 28th -</h1>
然后在下一个星期一,我想将标题中的日期自动更新为下一个星期五。
这可能用php吗?
这就是你要找的:
switch (date('N'))
{
case 5:
$time = time();
break;
case 6:
case 7:
$time = strtotime('last Friday');
break;
default:
$time = strtotime('next Friday');
}
echo date('l F jS', $time);
检查日期功能以获得不同的格式选项。
虽然您确定要等到星期一才能显示下星期五的预报吗?当然它应该在星期六更新到下一周(否则您将预测过去的日期)?如果是这样,只需删除case 6
/case 7
部分。
$currDay = date('w');
$delta = $currDay==6 ? 6 : 5-$currDay;
$date = new DateTime();
$date->add(new DateInterval('P'.$delta.'D'));
echo $date->format('D M jS');
它的编码非常简单,可以尽可能简单地解释。如果 $today 不是星期五,该脚本会计算距离下星期五还有多少天。
希望对你有帮助!
<?php
$now = time(); // current timestamp
$today = date("w", $now); // "w" returns the weekday (number)
$friday = 5; // 5th day of the week (sunday = 0)
if ($today == $friday) {
$ts = $now; // today is friday, don't change the timestamp
$daysLeft = 0; // no days left!
} else {
if ($today == 6) {
$daysLeft = 6; // saturday is bigger then friday
} else {
$daysLeft = $friday-$today; // get the left days
}
$ts = $now + 84600 * $daysLeft; // now + seconds of one day * days left
}
?>
<h1>
- Forecast for <?php echo date("D M d", $ts) ?>-
</h1>
是的。查看date()
格式化并strtotime()
快速创建相对时间戳:
以下内容应该可以帮助您入门:
echo date('l F jS', strtotime('monday'));
注意:如果您使用 PHP > 5.3,您应该查看DateTime 类。