我正在努力让strtotime给我一个时间戳,但我只知道它是一小时一分钟,而且它是下一行。 Fx的。
如果给定的小时和分钟是01:00(AM),我要求它返回01:00(AM)的时间戳,如果是前一天的19:00,我希望它返回时间戳第二天01:00,但如果是在00:30午夜之后,它应该在同一天返回时间戳01:00。
为了简化它,它是NEXT出现的时间。
Strtotime在同一天给我时间,如果不是下一次出现。
答案 0 :(得分:4)
您可以轻松生成时间戳,查看它是否已经过去,然后增加一天。
或许这样的事情?
$timestamp = strtotime("1:00 am");
if($timestamp < time()) {
$timestamp = strtotime("+1 day",$timestamp);
}
或者如果你想把它收紧到单行:
$string = "1:00 am";
$timestamp = (strtotime($string) > time()) ? strtotime($string) : strtotime("tomorrow " . $string);