-1

我想在当前日期上增加 30 分钟。但如果我这样做,它会显示 1970-01-01 01:03:33(Unix 时间戳)。如何以 strtotime() 解析器理解的格式检索结果?

这是我的代码:

$date1      =   date("Y-m-d H:i:s");
$newdate    =   date("Y-m-d H:i:s", strtotime('+30 minutes', $date1));
4

5 回答 5

1

那是因为date()返回一个字符串,并且您将 30 分钟添加到字符串而不是日期。试试这个:

$newdate    =   date("Y-m-d H:i:s", strtotime('+30 minutes', now()));

或者

$date1      =   date("Y-m-d H:i:s");
$newdate    =   date("Y-m-d H:i:s", strtotime('+30 minutes', strtotime($date1)));
于 2013-09-24T11:02:55.327 回答
0

strtotime期望时间戳作为其第二个参数,而不是格式化的日期。但无论如何,您都可以使用时间戳:

$newdate = date("Y-m-d H:i:s", time()+30*60);
于 2013-09-24T11:01:38.757 回答
0

这应该是答案

echo date("Y/m/d h:i:s", strtotime("+30 minutes"));
于 2013-09-24T11:02:10.370 回答
0

试试这个

$curDate = date('Y-m-d', strtotime("+30 minutes", strtotime(date('Y-m-d'))));
于 2013-09-24T11:04:35.060 回答
0
$now      =   time();
$later    =   $now + 60*30;
于 2013-09-24T11:04:37.037 回答