在PHP中,我希望获得用户进入页面(包含名为“ sampleform”的联系表单)的页面与实际通过$ _POST方法提交表单之间的时间差。因此,我创建了一个如下所示的测试脚本,但是它似乎不起作用-它始终将时间显示为0。为什么它不起作用:
$enterTime=time();
if(!empty(($_POST['sampleform'])))
echo 'You submitted the form after '.(time()-$enterTime).' seconds';
答案 0 :(得分:2)
每次运行此代码时,您都要重置$enterTime
,所以time()-$enterTime
将始终返回0。如上所述,您可以将此值保留在会话变量中,但是如果不这样做,要使用会话,还可以在表单中使用隐藏的输入,例如
<input type="hidden" name="enterTime" value="<?php echo time(); ?>">
那你要写
if(!empty(($_POST['sampleform'])))
echo 'You submitted the form after '.(time()-$_POST['enterTime']).' seconds';