微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PHP趣味小练习:将N秒内连续记录视为一条记录

挺有意思:PHP 将N秒内连续的记录视为一条记录~

现在时间是 11:34:00 秒,我向系统发送了一条 “hello,”,

02 秒 – “i”
03 秒 – “am”
04 秒 – “PHP_yt”

当发送 “hello” 时,系统保存了一条记录

sendtime:1638589060,text:hello,,

5 秒内系统视为一条记录,即

sendtime:1638589060,text:hello, i am PHP_yt

通过下面的可实现

$Now = time();
$Now2 = intval( $Now /5 ) * 5;

测试代码

echo $Now = time();//1638589533
echo PHP_EOL;
echo $Now / 5; //327717906.6
echo PHP_EOL;
echo $custom_time = intval( $Now /5 ) * 5;//1638589530

假如 hello, 这条记录的时间是 1638589530 , 那么目前时间戳 1638589533 也视为和 hello, 相同的时间

当然也可以调整 5 秒为 10 秒,原理就是

echo $Now / 5; //327717906.6 每秒小数点向前 0.2,取整忽略掉

10 秒的话,小数点向前 0.1,取整忽略掉。

不过上面的有 bug,可将一段时间内的发送时间都转为 custom_time 合并,具体应用场景不详,权当娱乐

推荐学习:《PHP教程

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐