求PHP封IP段
如题,我刚接触网络编程,请问如何用PHP来封某一段IP
我想了一个却只能封某个IP
就是在首页先getenv["remote_addr"]取得IP地址
然后建了一个黑名单表[放置要被封的IP]
比对如果这个IP在黑名单表中就跳转到一个错误页面不继续读取首页
我这样只能封特定的IP 而没办法封 类似 127.0.0.* 这样的IP段
用什么语句实现?具体怎么实现?
参考答案:1、首先用explode()函数将访问者IP 111.222.333.444以"."为分隔符拆成一个二维数组
$UserIP=explode(".",111.222.333.444)之后,则数组$UserIP的内容为
$UserIP[0]="111"
$UserIP[1]="222"
$UserIP[2]="333"
$UserIP[4]="444"
2、然后用explode函数把你的黑名单IP拆成一个数组$BadIP,然后根据你要封锁的网段来进行比较,比如:
if ($UserIP[0]==$BadIP[0] && $UserIP[1]==$BadIP[1] && $UserIP[2]==$BadIP[2] && ) {
跳转错误页面
}
else {
读取首页
}
这就封掉了111.222.333.*这样的一个网段