比如现在知道了211.157.102.25,
怎么得到这个ip的前2(3)段(即:211.157)???
---------------------------------------------------------------
$arr=explode(".","211.157.102.25");
echo $arr[0].".".$arr[1];
---------------------------------------------------------------
如果不用正则表达式可以用这个办法解决.
---------------------------------------------------------------
这个好像是js实现耶~
try like this
1<script>
2s="211.157.102.25";
3r=/\d{1,3}\\.\d{1,3}/g
4alert(s.match(r)[0])
5</script>
---------------------------------------------------------------
最佳方案:
1
2$ip="211.157.102.25"; // 用户的ip
3
4$deny = array("211.157","202.118"); // 待封杀的ip或段
5
6for($i=0;$i<count($deny);$i++) {
7$deny[$i] = "/^$deny[$i].*/"; // 构造正则表达式
8$replarr[$i] = "kill"; // 构造替换串
9}
10$ip = preg_replace($deny,$replarr,$ip);
11
12if($ip == "kill")
13header("location:error.html");