我需要能够使用 PHP 计算显示下一个 6 月 1 日的日期。所以,今天是2013 年 4 月 15 日,因此我需要显示01/06/2013(英国格式)。如果日期是2013 年 8 月 5 日,我需要显示01/06/2014。
任何人都可以帮忙吗?
谢谢,
约翰
您可以使用以下方法实现此目的:
$now = time();
$june = strtotime("1st June");
if ($now > $june)
echo date("d/m/Y", strtotime('+1 year', $june));
else
echo date("d/m/Y", $june);
希望这可以帮助 :)
为此,您可以通过检查当前月份来实现
if(date('m')>06)
{
$date= date('d-m-Y',strtotime("next year June 1st"));
}
else{
$date= date('d-m-Y',strtotime("this year June 1st"));
}
echo $date;
为当前年份创建一个新的 DateTime 对象。DateTime 是在 PHP 中处理日期的首选方式。
如果为时过早,请为下一年创建一个新的日期时间对象。
最后,使用“格式”来输出。
$d = new DateTime(date('Y').'-08-05');
if ($d < new DateTime()) {
$d = new DateTime((date('Y')+1).'-04-15');
}
echo $d->format('d/m/Y');
您可以使用本教程实现此目的。您可以定义时区并根据您的格式显示日期。
检查本手册。http://php.net/manual/en/function.date.php
这里给出了明确的例子:
<?php
// set the default timezone to use. Available since PHP 5.1
date_default_timezone_set('UTC');
echo $today = date("d/m/y"); // 03/10/01
?>