我有两个时间值,比如starttime = 23:00:00,估计时间= 00:45:00现在我想添加开始时间和估计时间,并将其存储在我喜欢的变量中
$add = abs(strtotime($starttime) + strtotime($estimationtime));
现在我必须比较新时间说当前时间或任何其他时间间隔(23:50:00)
if($time >=$starttime && $time <=$add)
{
$message=array("message"=>"there is an appointment");
}
如果我回复$ add我没有得到正确的格式,它显示2675756700
请帮我解决这个问题
答案 0 :(得分:1)
strtotime()返回一个时间戳,这是自1970年1月1日以来的秒数。你无法将它与格式化的时间值进行比较 - 它只是一个整数。
所以基本上,你做的相当于:
$add = 1 + 2; // 3
if (3 >= '23:50:00') ...
如果要将时间值作为时间戳进行比较,则必须将所有内容转换为时间戳。或者,你可以使用DateTime object,它会自动为你处理很多这类事情。
答案 1 :(得分:1)
如果您希望以可读的形式回显$add
变量,则必须先将其格式化。
echo(date("H:i:s", $add));