我正在尝试将 28 天添加到日期并不断收到以下错误:
消息:遇到格式不正确的数值
我的代码是:
$expirationDate = 1396885780;
$entryDate = 1396885780;
if ($expirationDate) {
$expiration = time(strtotime($expirationDate, '+28 day'));
} else {
$expiration = time(strtotime($entryDate, '+28 day'));
}
所以基本上我正在传递一个 %U 格式的日期(我认为这是通用的)并希望为其添加 28 天。
任何人都可以在这里看到问题吗?
调用
strtotime() 时的参数 2
该函数希望得到一个包含英文日期的字符串 格式,并将尝试将该格式解析为 Unix 时间戳( 自 1970 年 1 月 1 日 00:00:00 UTC 以来的秒数,相对于 现在给出的时间戳,如果未提供现在,则为当前时间。
然后不需要调用 time() 来尝试将其转换为时间戳,因为 strtotime() 已经返回了一个时间戳
$expirationDate = 1396885780;
$entryDate = 1396885780;
if ($expirationDate) {
$expiration = strtotime('+28 day', $expirationDate);
} else {
$expiration = strtotime('+28 day', $entryDate);
}