php 判断IP地址是否在指定的IP段内

春天,大自然一片生机,天空则设计了一个优美的背景。淡蓝的颜色,有些透明,像一块在强烈光照下的蓝宝石,无暇的找不出半点疵瑕。云儿也不知上哪儿玩去了,剩下个特大特明亮的太陽,照得天空泛白。万物在这背景下都是那么的奇妙美好,无处不弥漫着陽光的气味。天空,多么像一位诗人,创造了春天这么美的意境!

一些搜索引擎蜘蛛的IP通常是一个大的IP段,所以我们在判断某个IP地址是否为搜索引擎的蜘蛛时,通常就会判断IP地址是否在某个IP段内,而在php中,这种判断IP是否属于某个IP段的方法,就显得非常的简单,下面就来和大家分享一下。

IP段的范围解析

头条的蜘蛛IP段:110.249.202.0/24

此段IP表示一共有254个IP地址,范围如下:

110.249.202.1  到  110.249.202.254

php 判断IP地址是否在指定的IP段内的方法

php代码:

<?php
//起始ip
// feiniaomy.com
$ip_start = get_iplong('110.249.202.1'); 
//最后的IP
$ip_end = get_iplong('110.249.202.254');
//判断的ip
$ip = get_iplong('110.249.202.103');
//开始判断
if($ip >= $ip_start && $ip <= $ip_end){
    echo 'IP在此范围内';
}else{
    echo 'IP不在此范围';
}
//转换IP地址
function get_iplong($ip){
    return bindec(decbin(ip2long($ip)));
}
?>

输出结果:

IP在此范围内

代码解释:

ip2long():将IPv4地址转换成整型

decbin():函数把十进制转换为二进制

bindec():函数把二进制转换为十进制。

到此这篇关于php 判断IP地址是否在指定的IP段内就介绍到这了。世上最贵的东西——时间。更多相关php 判断IP地址是否在指定的IP段内内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!

标签: php php教程