0

0

php中获取指定IP的物理地址的代码(正则表达式)_PHP教程

php中文网

php中文网

发布时间:2016-07-21 15:27:53

|

1041人浏览过

|

来源于php中文网

原创

自己搭建IP数据库占资源,而且更新不便,何不使用现成的IP查询呢?下面自己写了个获取IP物理地址的PHP代码(有一定的瑕疵,请高手不吝赐教)

复制代码 代码如下:











php
$ipAddr = "218.75.124124.100";
$ip138Addr = "http://www.ip138.com/ips8.asp?ip=".$ipAddr."&action=2";
$contents = file_get_contents($ip138Addr);
$pattern = "/\/";
$string = $contents;
preg_match_all($pattern,$string,$addrArray);
$num = count($addrArray[0]);
for($i = 0;$iecho $addrArray[0][$i] = mb_convert_encoding($addrArray[0][$i],"UTF-8", "GB2312");
switch($i) {
case 0:$str = "
  • 本站主数据:
  • ";break;
    case 1:$str = "
  • 参考数据一:
  • ";break;
    case 2:$str = "
  • 参考数据二:
  • ";break;
    case 3:$str = "
  • 参考数据三:
  • ";break;
    case 4:$str = "
  • 参考数据四:
  • ";break;
    case 5:$str = "
  • 参考数据六:
  • ";break;
    case 6:$str = "
  • 参考数据七:
  • ";break;
    }
    $addrArray[0][$i] = trim($addrArray[0][$i],$str);
    }
    $addrArray[0][0] = trim($addrArray[0][0],":");
    echo "
    "; 
    print_r($addrArray);
    echo "
    ";
    ?>



    这段代码采用访问http://www.ip138.com后使用正则表达式进行截取部分内容,其中正则表达式是自己写的。
    php中获取指定IP的物理地址的代码(正则表达式)_PHP教程
    开始还好,下面的处理结果出现了乱码,如果把$str(去除字符串首尾的标识)定义的字符串就没有了乱码;而且再加一个单独的去除“:”的语句,就可以实现无乱码的现象,不知道为什么了……
    正则表达式——获取指定IP的物理地址(二) chinaz数据
    上一个IP获取的结果不是很完善,究其原因是因为ip138的IP解析应对国外的地址时不是很详细,所以又重新写了个用Chianz.com的代码。
    复制代码 代码如下:











    $ipAddr = "4.4.44.4";
    $ipChinazAddr = "http://tool.chinaz.com/IP/?IP=".$ipAddr;
    $contents = file_get_contents($ipChinazAddr);
    $pattern = "/\=\=\>\>.+\\
    /";
    $string = $contents;
    preg_match_all($pattern,$string,$addrArray);
    $num = count($addrArray[0]);
    $pattern = "/(==>>).+(==>>\s)/";
    for($i = 0;$i$addrArray[0][$i] = preg_replace($pattern,"",$addrArray[0][$i]);
    }
    echo "
    "; 
    print_r($addrArray);
    echo "
    ";
    ?>



    结果还令人满意

    php中获取指定IP的物理地址的代码(正则表达式)_PHP教程

    php中获取指定IP的物理地址的代码(正则表达式)_PHP教程

      以上是本人写的两个获取IP物理地址的代码,作为一个初学者,没事的时候写写简单的代码也还是一件挺有意思的事。但是毕竟是一个初学者,不能更好的注意安全性、空间利用率、时间效率等问题,还望各位留下你的足迹,小弟谢了

    松果AI写作
    松果AI写作

    专业全能的高效AI写作工具

    下载

    www.bkjia.comtruehttp://www.bkjia.com/PHPjc/323668.htmlTechArticle自己搭建IP数据库占资源,而且更新不便,何不使用现成的IP查询呢?下面自己写了个获取IP物理地址的PHP代码(有一定的瑕疵,请高手不吝...

    相关专题

    更多
    php与html混编教程大全
    php与html混编教程大全

    本专题整合了php和html混编相关教程,阅读专题下面的文章了解更多详细内容。

    1

    2026.01.13

    PHP 高性能
    PHP 高性能

    本专题整合了PHP高性能相关教程大全,阅读专题下面的文章了解更多详细内容。

    5

    2026.01.13

    MySQL数据库报错常见问题及解决方法大全
    MySQL数据库报错常见问题及解决方法大全

    本专题整合了MySQL数据库报错常见问题及解决方法,阅读专题下面的文章了解更多详细内容。

    6

    2026.01.13

    PHP 文件上传
    PHP 文件上传

    本专题整合了PHP实现文件上传相关教程,阅读专题下面的文章了解更多详细内容。

    5

    2026.01.13

    PHP缓存策略教程大全
    PHP缓存策略教程大全

    本专题整合了PHP缓存相关教程,阅读专题下面的文章了解更多详细内容。

    3

    2026.01.13

    jQuery 正则表达式相关教程
    jQuery 正则表达式相关教程

    本专题整合了jQuery正则表达式相关教程大全,阅读专题下面的文章了解更多详细内容。

    1

    2026.01.13

    交互式图表和动态图表教程汇总
    交互式图表和动态图表教程汇总

    本专题整合了交互式图表和动态图表的相关内容,阅读专题下面的文章了解更多详细内容。

    5

    2026.01.13

    nginx配置文件详细教程
    nginx配置文件详细教程

    本专题整合了nginx配置文件相关教程详细汇总,阅读专题下面的文章了解更多详细内容。

    3

    2026.01.13

    nginx部署php项目教程汇总
    nginx部署php项目教程汇总

    本专题整合了nginx部署php项目教程汇总,阅读专题下面的文章了解更多详细内容。

    5

    2026.01.13

    热门下载

    更多
    网站特效
    /
    网站源码
    /
    网站素材
    /
    前端模板

    精品课程

    更多
    相关推荐
    /
    热门推荐
    /
    最新课程
    PHP课程
    PHP课程

    共137课时 | 8.6万人学习

    JavaScript ES5基础线上课程教学
    JavaScript ES5基础线上课程教学

    共6课时 | 6.9万人学习

    PHP新手语法线上课程教学
    PHP新手语法线上课程教学

    共13课时 | 0.9万人学习

    关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
    php中文网:公益在线php培训,帮助PHP学习者快速成长!
    关注服务号 技术交流群
    PHP中文网订阅号
    每天精选资源文章推送

    Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号