單位時間內(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; }