假設(shè)我具有要阻止89.96.53.158和89.96.53.189的以下IP范圍這是如何嘗試實(shí)現(xiàn)它。我的問題是:按照下面的代碼,這是最好的方法嗎?下面的代碼是否適合它$ip = sprintf('%u', ip2long($_SERVER['REMOTE_ADDR']));$start_ip = sprintf('%u', ip2long("89.96.53.158"));$end_ip = sprintf('%u', ip2long("89.96.53.189"));// stop only ip range between 89.96.53.158 - 89.96.53.189if ($ip >= $start_ip && $ip <= $end_ip) { echo "you cannot access our site"; exit();}我也可以使用strpos()功能來實(shí)現(xiàn)嗎
1 回答

慕仙森
TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超8個贊
是的,我想出了另一種使用strpos()方法的方法
if(strpos($_SERVER['REMOTE_ADDR'], "89.96") === 0)
{
echo "you cannot access our site";
exit();
}
如果您注意到,===操作員將確保89.96位于IP地址的開頭。這意味著您可以指定任意數(shù)量的IP地址,并且無論后面輸入什么數(shù)字,該地址都會被阻止。
- 1 回答
- 0 關(guān)注
- 148 瀏覽
添加回答
舉報
0/150
提交
取消