如果存在日期,则返回计算的日期

问题描述 投票:0回答:1

我有下面的代码在日期中添加天。

$date = '[[lbc_dates_lbc_date]]';
$date = date('d F y', strtotime('+28 days', strtotime($date)));
echo $date;

这对于实际存在日期输入的情况非常有用,但是,对于尚不存在日期输入的情况(空白),它显示一个奇数日期。

您可以修改代码以说是否存在日期,然后加上几天,否则留空?

请查看附带的图像(红色为错误,绿色为正确视图)

enter image description here

谢谢

php date if-statement view return-value
1个回答
0
投票

strtotime()在无法解析日期时将返回FALSE。当您将其用作第二次调用0的基准时间时,它将被视为strtotime()的纪元时间。

在尝试使用结果之前先进行检查。

$parsed = strtotime($date);
if ($parsed) {
    $date = date('d F y', strtotime('+28 days', $parsed));
} else {
    $date = '';
}
© www.soinside.com 2019 - 2024. All rights reserved.