关于“php判断ip是否合法”的问题,小编就整理了【3】个相关介绍“php判断ip是否合法”的解答:
php判断ip地址是否正确的代码?想要正确的使用正则表达式来判断 IP 地址正确与否,重点就是如何使用正则表达式来表示 IP 中的 4 个数字,保证它们的取值范围在 0~255 之间。
如下所示:
([0-9]?[0-9])|(1[0-9]{2})|(2[0-4][0-9])|(25[0-5])
有了上面的正则表达式,定义好4组数正则表达式
((([0-9]?[0-9])|(1[0-9]{2})|(2[0-4][0-9])|(25[0-5]))\.){3}(([0-9]?[0-9])|(1[0-9]{2})|(2[0-4][0-9])|(25[0-5]))
至此正则表达式就是定义好了,将它放到代码中来验证一下,代码如下所示:
function validateip($ip){
$preg="/^((([0-9]?[0-9])|(1[0-9]{2})|(2[0-4][0-9])|(25[0-5]))\.){3}(([0-9]?[0-9])|(1[0-9]{2})|(2[0-4][0-9])|(25[0-5]))/";
preg_match($preg,$ip,$matches);
if(!empty($matches)) return 1;
怎样判断ip地址是否合法?判断IP地址合法步骤:
1、首先了解下IP地址是什么,IP地址分为A类,B类,C类,D类,E类。A类的IP地址范围为0.0.0.0-127.255.255.255,B类的IP地址范围为128.0.0.0-191.255.255.255,C类的IP地址范围为192.0.0.0-223.255.255.255。
2、然后判断标识长度,在A类IP地址里,其中网络的标识长度为8位,主机标识的长度为24位,子网掩码为255.0.0.0。B类适合用于中等规模的网络,其中网络的标识长度为16位,主机标识的长度为16位,子网掩码为255.255.0.0。C类适合小规模的局域网,其中网络的标识长度为24位,主机标识的长度为8位,子网掩码为255.255.255.0。
3、最后判断是否合法,在每个合法的IP地址中,有4个3位数用“.”隔开的数字,而且每个三位数都在0到255之间,并且包含255这个数字。相信大家在学习后,已经知晓如何判断IP地址是否合法了。
IP地址:
互联网协议地址(英语:Internet Protocol Address,又译为网际协议地址),缩写为IP地址(IP Address)。IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。
如何判断是合法IP地址还是非法的IP地址?判断IP地址是否合法,需要遵循以下规则:
1. IP地址由4个8位二进制数组成,每个数组的取值范围是0~255。
2. IP地址中每个数组之间使用“.”分隔。
3. IP地址中不能包含除数字和“.”以外的其他字符。
4. IP地址中每个数组的前导零可以省略,但不能省略数组本身。
5. IP地址中每个数组的值不能大于255或小于0。
因此,如果一个字符串符合以上规则,就可以认为是一个合法的IP地址。反之,如果不符合以上规则,则可以认为是一个非法的IP地址。
例如,以下是合法的IP地址:
- 192.168.0.1
- 172.16.0.0
- 10.0.0.1
以下是非法的IP地址:
- 192.168.0.256(最后一个数组的值超出了取值范围)
- 192.168.0 (数组数量不足4个)
- 192.168.0.01 (前导零不能省略)
- 192.168.0.abc (包含非数字和“.”的字符)
到此,以上就是小编对于“php判断ip是否合法”的问题就介绍到这了,希望介绍关于“php判断ip是否合法”的【3】点解答对大家有用。