我试图在 PHP 中使用这个添加一定数量的天数:
$capturedDate = '2008-06-20';
$endDate = strtotime($capturedDate);
$endDate2 = strtotime('+1 day',$endDate);
echo $endDate2;
但它的显示:1216526400
有任何想法吗?
我试图在 PHP 中使用这个添加一定数量的天数:
$capturedDate = '2008-06-20';
$endDate = strtotime($capturedDate);
$endDate2 = strtotime('+1 day',$endDate);
echo $endDate2;
但它的显示:1216526400
有任何想法吗?
尝试:
echo date("Y-m-d H:i:s",$endDate2);
或者(仅针对日期):
echo date("Y-m-d",$endDate2);
您可以在此处找到有关如何格式化字符串的文档:http: //php.net/manual/en/function.date.php
您应该使用 DateTime 来处理日期。这是时区友好的。
$datetime = new DateTime('2008-06-20');
$datetime->modify('+1 day');
echo $datetime->getTimestamp();
DateTime 是一种非常好的处理日期的方法。你可以这样尝试:
$capturedDate = '2008-06-20';
$date = DateTime::createFromFormat('Y-m-d', $capturedDate)->modify('+1 day');
echo $date->getTimestamp();
strtotime创建一个 Unix 时间戳,所以如果你想显示一个格式化的日期,你需要将时间戳作为参数传递给 date 函数,如下所示:
$capturedDate = '2008-06-20';
$endDate = strtotime($capturedDate);
$endDate2 = strtotime('+1 day',$endDate);
echo date('Y-m-d', $endDate2);
此外,如果要显示附加信息,可以在日期函数中使用多种参数。
例如:echo date('Y-m-d H:i:s', $endDate2);
或echo date('Y-m-d h:i:s a', $endDate2);
等。
strtotime()
将日期转换为 unix 时间戳,即自 1970 年 1 月 1 日以来的秒数。如果您想要日期输出,则必须首先运行完成的时间戳date()
。
$capturedDate = '2008-06-20';
$endDate = strtotime($capturedDate.' +1 day');
echo date("Y-m-d", $endDate);
太接近了,只需使用您的时间戳并将其转换回日期格式date("desired format",$endDate2);