單位時間內(nèi)限制同一個IP的瀏覽次數(shù) (基于TP5框架)
$sessonName = md5($id.getRealIP()); //同一個id與ip綁定一起
$hitTime = session($sessonName);
if(empty(session("?$sessonName")) || time() - $hitTime >= 300){
session($sessonName,time());
Db::name('news')->where('id', $id)->setInc('views'); //瀏覽次數(shù)自增1 ; setDec: 自減
};function getRealIP(){
$forwarded = request()->header("x-forwarded-for");
if($forwarded){
$ip = explode(',',$forwarded)[0];
}else{
$ip = request()->ip();
}
return $ip;
}