php - 比较 PHP 中的两个时间戳
问题描述
我试图在我的联系表格中防止垃圾邮件。当任何人使用联系表格联系时,我会将他的 IP 地址保存在当前时间的数据库中。如果有人尝试联系,我正在检查数据库中的 IP,如果数据库中有 IP 地址条目,我将获取它的时间戳并将其与当前时间戳进行比较,但我认为它有问题,它给了我错误的时间,所以用户是仍然可以发送消息。
我已经定义了 TimeZone 如下
define('TIMEZONE', 'Asia/Kolkata');
date_default_timezone_set(TIMEZONE);
$date = date('Y/m/d h:i:s', time());
我在数据库中插入写入时间,与 php 中的 echo 相同。
现在我正在获取并比较两个时间,如下所示
$last_time = $row['time'];
$current_time = $date;
if(($current_time-strtotime($last_time )) > 1800) {
//send mail
}
else {
// give error
}
我两次都尝试过回声,我得到了这样的结果
$last_time = 2018-09-23 07:56:37
$current_time = 2018/09/23 07:56:51
($current_time-strtotime($last_time ) = -1537667579
我不知道它有什么问题。
让我知道它是否有任何问题。
解决方案
还将当前时间转换为 strtotime。确保两个日期格式应该相同
define('TIMEZONE', 'Asia/Kolkata');
date_default_timezone_set(TIMEZONE);
$date = date('Y/m/d h:i:s', time());
$last_time = $row['time'];
$current_time = $date;
if((strtotime($current_time)-strtotime($last_time )) > 1800) {
//send mail
}
else {
// give error
}
推荐阅读
- c++ - 通过指针打印二维数组时获取垃圾值的原因
- monitoring - 如何将两个 APM 数据合并到一个视图中
- python - 尝试加载泡菜文件 - AttributeError:无法获取属性“个人”
我正在尝试
tradeopt.pars
使用以下代码打开一个名为 pickle 的文件:import os import lzma import pickle import sys from shutil import rmtree def main(): wk_dir
- r - 向未迭代创建的汇总表添加差异
- r - 对每一列应用一个函数
- c - MinGW CMake make googletest 出现错误但没有命中
- php - 网关超时 webfoersterei / domain-bestellsystem-api-client
- git - git 正在向我的命令字符串添加控制字符,因此会炸毁 '$'\033''[m'
- angular - 自定义样式不适用于 angular 10
- javascript - 我将如何获得一个现有的按钮来使用 html 更改对象的不透明度?