全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

php使用preg_match()函数验证ip地址的方法

本文实例讲述了php使用preg_match()函数验证ip地址的方法。分享给大家供大家参考,具体如下:

代码一、正则实现

preg_match('/^(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:[.](?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}$/', $ipAddress);

代码二、

<?php
/*
*@return Boolen
*@param String $ip 要匹配的ip地址
*@param String $pat 匹配的正则规则
*@param Boolen 匹配成功后返回的布尔值
*preg_match()
*0为不成功,1为成功
*/
function fun($ip){
  //0.0.0.0--- 255.255.255.255
  $pat = "/^(((1?\d{1,2})|(2[0-4]\d)|(25[0-5]))\.){3}((1?\d{1,2})|(2[0-4]\d)|(25[0-5]))$/";
  if(preg_match($pat,$ip)){
   $num = preg_match($pat,$ip);
   return $num;
  }else{
   $num = preg_match($pat,$ip);
   return $num;
  }
}
echo fun("255.255.255.255");

正则的效率是在比不上原生的,所以丢个链接(过滤器函数)走人。

过滤器的选项,比如可以过滤私有IP地址等。

用法参考Validating an IP address with PHP's filter_var function

php如何判断IP为有效IP地址

多数人看到这篇日志,第一印象肯定是以为是要讲如何通过正则表达式来判断。

非也,在php5.2.0之后,有专门的函数来做这个判断了。

判断是否是合法IP

if(filter_var($ip, FILTER_VALIDATE_IP)) {
// it's valid
}
else {
// it's not valid
}

判断是否是合法的IPv4 IP地址

if(filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4)) {
// it's valid
}
else {
// it's not valid
}

判断是否是合法的公共IPv4地址,192.168.1.1这类的私有IP地址将会排除在外

if(filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4 | FILTER_FLAG_NO_PRIV_RANGE)) {
// it's valid
}
else {
// it's not valid
}

判断是否是合法的IPv6地址

if(filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_NO_RES_RANGE)) {
// it's valid
}
else {
// it's not valid
}

判断是否是public IPv4 IP或者是合法的Public IPv6 IP地址

if(filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE | FILTER_FLAG_NO_RES_RANGE)) {
// it's valid
}
else {
// it's not valid
}

PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:

JavaScript正则表达式在线测试工具:
http://tools./regex/javascript

正则表达式在线生成工具:
http://tools./regex/create_reg

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php正则表达式用法总结》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php面向对象程序设计入门教程》、《PHP网络编程技巧总结》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。


# php  # preg_match()  # 验证  # ip地址  # php中使用preg_match_all匹配文章中的图片  # php preg_match_all结合str_replace替换内容中所有img  # PHP中preg_match正则匹配中的/u、/i、/s含义  # PHP函数preg_match_all正则表达式的基本使用详细解析  # PHP 正则表达式之正则处理函数小结(preg_match  # preg_match_all  # preg_replace  # preg_split)  # PHP preg_match的匹配多国语言的技巧  # PHP preg match正则表达式函数的操作实例  # php中获取指定IP的物理地址的代码(正则表达式)  # PHP IPV6正则表达式验证代码  # PHP 正则表达式效率 贪婪、非贪婪与回溯分析(推荐)  # php常用正则函数实例小结  # php正则修正符用法实例详解  # 判断是否  # 正则表达式  # 程序设计  # 操作技巧  # 是在  # 相关内容  # 将会  # 感兴趣  # 这类  # 给大家  # 或者是  # 来做  # 这篇  # 更多关于  # 所述  # 不成功  # 比不上  # 多数人  # 面向对象  # 再为 


相关文章: 图册素材网站设计制作软件,图册的导出方式有几种?  如何通过多用户协作模板快速搭建高效企业网站?  制作表格网站有哪些,线上表格怎么弄?  红河网站制作公司,红河事业单位身份证如何上传?  平台云上自主建站:模板化设计与智能工具打造高效网站  如何选择高性价比服务器搭建个人网站?  在线ppt制作网站有哪些,请推荐几个好的课件下载的网站?  天津个人网站制作公司,天津网约车驾驶员从业资格证官网?  Python文件管理规范_工程实践说明【指导】  如何配置FTP站点权限与安全设置?  如何在七牛云存储上搭建网站并设置自定义域名?  一键网站制作软件,义乌购一件代发流程?  如何用已有域名快速搭建网站?  如何用VPS主机快速搭建个人网站?  MySQL查询结果复制到新表的方法(更新、插入)  做企业网站制作流程,企业网站制作基本流程有哪些?  胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?  C++中引用和指针有什么区别?(代码说明)  焦点电影公司作品,电影焦点结局是什么?  如何选择高效可靠的多用户建站源码资源?  建站之星如何快速解决建站难题?  行程制作网站有哪些,第三方机票电子行程单怎么开?  XML的“混合内容”是什么 怎么用DTD或XSD定义  齐河建站公司:营销型网站建设与SEO优化双核驱动策略  如何高效利用200m空间完成建站?  攀枝花网站建设,攀枝花营业执照网上怎么年审?  北京专业网站制作设计师招聘,北京白云观官方网站?  如何快速建站并高效导出源代码?  如何在Golang中处理模块冲突_解决依赖版本不兼容问题  济南企业网站制作公司,济南社保单位网上缴费步骤?  韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南  高配服务器限时抢购:企业级配置与回收服务一站式优惠方案  宝塔新建站点报错如何解决?  如何做静态网页,sublimetext3.0制作静态网页?  云南网站制作公司有哪些,云南最好的招聘网站是哪个?  公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?  网站制作中优化长尾关键字挖掘的技巧,建一个视频网站需要多少钱?  建站VPS配置与SEO优化指南:关键词排名提升策略  如何批量查询域名的建站时间记录?  电商平台网站制作流程,电商网站如何制作?  教学网站制作软件,学习*后期制作的网站有哪些?  如何快速打造个性化非模板自助建站?  建站之星如何保障用户数据免受黑客入侵?  网站图片在线制作软件,怎么在图片上做链接?  内部网站制作流程,如何建立公司内部网站?  长沙企业网站制作哪家好,长沙水业集团官方网站?  如何在建站之星网店版论坛获取技术支持?  东莞专业网站制作公司有哪些,东莞招聘网站哪个好?  建站之星安装失败:服务器环境不兼容?  建站之星2.7模板:企业网站建设与h5定制设计专题 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。