我有一些功能取决于某些事情是否已经及时发生。 目前,我这样做:
$hike_time = strtotime($month.'/'.$day.'/'.$year.' '.$start_time);
if($hike_time < mktime())
{
// Do stuff :)
}
但我需要等待一天或十二小时(不确定),直到我更改功能 如何让mktime()为+1天或+12小时?
在用户体验方面,如何处理这种基于事件的用户体验怪癖?
答案 0 :(得分:8)
您可以使用strtotime()
。
$tomorrow = strtotime('+1 day');
var_dump(
date(DATE_RFC850, time()), // string(30) "Monday, 28-Mar-11 05:48:47 UTC"
date(DATE_RFC850, $tomorrow) // string(31) "Tuesday, 29-Mar-11 05:48:47 UTC"
);
答案 1 :(得分:1)
Strtotime给出了称为unix时间戳的时间。这是1970年1月1日的秒数。所以你得到的数字,你可以加上和减去你想要的秒数。
也就是将来的12个小时
$hike_time = strtotime($month.'/'.$day.'/'.$year.' '.$start_time) + (60 * 60 * 12);
答案 2 :(得分:1)
$tomorrow=date("M-d-Y",mktime(0,0,0,$day+1,$month,$year));
答案 3 :(得分:0)
作为一般解决方案,请添加一天中的秒数(86400)。