【发布时间】:2017-03-20 12:05:11
【问题描述】:
我正在使用 codeigniter。我需要获取两个时间戳之间的差异,并将其用于忘记密码服务中的链接到期。
到目前为止我已经尝试过了。
$date= date('Y-m-d H:i'); 这将产生类似2017-03-20 12:02 的内容。
然后在不久的将来我想再次使用相同的函数来获取当前时间。最终以分钟为单位测量这两次之间的差异。
【问题讨论】:
标签: php mysql codeigniter timestamp
我正在使用 codeigniter。我需要获取两个时间戳之间的差异,并将其用于忘记密码服务中的链接到期。
到目前为止我已经尝试过了。
$date= date('Y-m-d H:i'); 这将产生类似2017-03-20 12:02 的内容。
然后在不久的将来我想再次使用相同的函数来获取当前时间。最终以分钟为单位测量这两次之间的差异。
【问题讨论】:
标签: php mysql codeigniter timestamp
$past_time = strtotime('2017-03-20 12:02');
$current_time = time();
$difference = $current_time - $past_time;
$difference_minute = $difference/60;
echo 'Difference in minute between two different Time : '.intval($difference_minute);exit;
您可以尝试使用此代码。此代码用于给出两个不同时间之间的分钟差。
【讨论】:
实现这一点的最佳方法是创建一个额外的列,例如 created_at,其中包含创建链接的日期时间。当用户点击链接获取当前日期和时间并根据您的政策计算差异是否可以接受。
如果您不使用数据库,请在链接中添加一个额外的参数,例如 created_at 或 valid_upto,其中包含加密时间戳,并使用它来计算时间差并进行验证。
【讨论】:
您可以使用 time() 函数将时间保存在 unix 时间戳中,并使用简单的减法计算两个时间戳的差异。它将返回秒 b/w 两次然后将秒转换为分钟除以 60。
或
您可以使用 strtotime() 函数将日期转换为时间戳。
【讨论】: