怎么在php中利用memcached防止页面刷新-创新互联

怎么在php中利用memcached防止页面刷新?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

创新互联建站是一家专业提供甘德企业网站建设,专注与成都网站设计、成都做网站、HTML5建站、小程序制作等业务。10年已为甘德众多企业、政府机构等服务。创新互联专业网站制作公司优惠进行中。

1、以用户IP和被请求的文件名作为KEY值。


2、以memcached的方法increment()来自增记录用户访问次数,increment()是原子性增加,准确。

3、设置set()时指定过期时间为60s,这样就统计一分钟的访问次数。

于是写了个函数放在项目的初始化文件中调用,函数内容如下:


function requestCount(){ 

 $patharr = pathinfo($_SERVER['PHP_SELF']);

 $filename = explode('?',$patharr['basename']);//获取当前文件名

 if( in_array($filename['0'],array('index.php','login.php','password.php')) ){

 global $memcache;

 $clientip = get_client_ip();

 //使用长整型IP和文件名生成KEY

 $ipkey = 'C'.sprintf("%u", ip2long( $clientip )). $filename['0'] ;

 if( $visitCount = $memcache->get($ipkey) ){  

      if($visitCount == 100){

        die('

Please don\'t refresh your page!

');       }else{         $memcache->increment($ipkey);       }    }else{     $memcache->set($ipkey,1,0,60);  }  } }

看完上述内容,你们掌握怎么在php中利用memcached防止页面刷新的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!


标题名称:怎么在php中利用memcached防止页面刷新-创新互联
网站路径:http://scyanting.com/article/doeeis.html