如何阻止PHP sleep()影响我的整个PHP代码?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了如何阻止PHP sleep()影响我的整个PHP代码?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含920字,纯文字阅读大概需要2分钟。
内容图文
![如何阻止PHP sleep()影响我的整个PHP代码?](/upload/InfoBanner/zyjiaocheng/711/7c3d1e35cce44da0adfae2c82b80dfef.jpg)
所以,在我的街机上,howlingdoggames.com.我有一个积分系统,每次你访问一个有游戏的页面时都给你一个点,现在,为了减少对此的滥用,我想做出某种延迟,所以它只在45秒后获奖.这是我尝试过的.
...
if ($_SESSION['lastgame'] != $gameid);{
sleep(45);
$points = $points + $game_points;
$_SESSION['lastgame'] = $gameid;
}
...
但是,这似乎只是暂停了整个网站45秒,因为这是在index.php文件中,就像我的网站上的其他代码一样.
无论如何我可以隔离那段代码,所以它只能实现这个功能
$points = $points + $game_points;
等45秒?
解决方法:
PHP中(大多数情况下)没有多线程.您可以使用Unix系统上的分叉进程来执行此操作,但这是无关紧要的,因为多线程并不是您所追求的.你只想要这样简单的逻辑:
$now = time();
session_start();
$last = $_SESSION['lastvisit'];
if (!isset($last) || $now - $last > 45) {
$points = $_SESSION['points'];
if (!isset($points)) {
$points = 0;
}
$_SESSION['points'] = $points + 10;
$_SESSION['lastvisit'] = $now;
}
如果你最后一次给出点数之间的增量大于45秒,基本上只给出分数.
内容总结
以上是互联网集市为您收集整理的如何阻止PHP sleep()影响我的整个PHP代码?全部内容,希望文章能够帮你解决如何阻止PHP sleep()影响我的整个PHP代码?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。