我希望获得$ _POST时间与提交后页面内生成的时间之间的差异。
因为我想做一个if语句,如果两次之间的差异小于5秒,那么...... else ...
使用php date(“H:i:s);正确的函数?
生成时间
<?php date = date("H:i:s"); ?>
隐藏表格字段中的回声时间
<input name="tstmp" type="hidden" value="<?php echo $date; ?>"/>
然后在表单提交后用户获取的页面中。
//could the problem be this is a string within the $_POST
$timestart = $_POST['tstmp'];
$timeend = date("H:i:s");
//can this only be used with timestamp?
$interval = $timestart->diff($timeend);
答案 0 :(得分:0)
记下您的时间戳并使用strtotime()将它们转换为unix时间戳并将它们相互减去。
http://php.net/manual/en/function.strtotime.php
$timestart = $_POST['tstmp'];
$timeend = date("H:i:s");
$timestart = strtotime($timestart);
$timeend = strtotime($timeend);
if(($timeend - $timestart) > 5){
echo 'TIME IS GREATER THAN 5 SECONDS';
}
答案 1 :(得分:-2)
将您所加入的时间戳转换为日期时间对象
$timeStart = new DateTime($timeStart);
$timeEnd = new DateTime($timeEnd);
编辑:修复早晨编码大脑没有正常运作。