php获取本机真实IP地址实例代码


Posted in PHP onMarch 31, 2016

本文实例为大家分享了php获取本机真实IP地址实例代码,供大家参考。

主要是获取操作系统为win2000/xp、win7的本机IP真实地址,和获取操作系统为linux类型的本机IP真实地址,具体内容如下

function getLocalIP() {
 $preg = "/\A((([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]))\Z/";
//获取操作系统为win2000/xp、win7的本机IP真实地址
 exec("ipconfig", $out, $stats);
 if (!empty($out)) {
  foreach ($out AS $row) {
   if (strstr($row, "IP") && strstr($row, ":") && !strstr($row, "IPv6")) {
    $tmpIp = explode(":", $row);
    if (preg_match($preg, trim($tmpIp[1]))) {
     return trim($tmpIp[1]);
    }
   }
  }
 }
//获取操作系统为linux类型的本机IP真实地址
 exec("ifconfig", $out, $stats);
 if (!empty($out)) {
  if (isset($out[1]) && strstr($out[1], 'addr:')) {
   $tmpArray = explode(":", $out[1]);
   $tmpIp = explode(" ", $tmpArray[1]);
   if (preg_match($preg, trim($tmpIp[0]))) {
    return trim($tmpIp[0]);
   }
  }
 }
 return '127.0.0.1';
}

以上就是本文的全部内容,希望对大家的学习有所帮助。

PHP 相关文章推荐
php简单提示框alert封装函数
Aug 08 PHP
php关于array_multisort多维数组排序的使用说明
Jan 04 PHP
JS与PHP向函数传递可变参数的区别实例代码
May 18 PHP
php 中英文语言转换类
Sep 07 PHP
php 调试利器debug_print_backtrace()
Jul 23 PHP
对淘宝URL中ID提取的PHP代码
Sep 01 PHP
ThinkPHP模板自定义标签使用方法
Jun 26 PHP
ThinkPHP入口文件设置及相关注意事项分析
Dec 05 PHP
php解析字符串里所有URL地址的方法
Apr 03 PHP
PHP版本常用的排序算法汇总
Dec 20 PHP
浅谈PHP拦截器之__set()与__get()的理解与使用方法
Oct 18 PHP
PHP快速推送微信模板消息
Apr 14 PHP
详解PHP的Yii框架中自带的前端资源包的使用
Mar 31 #PHP
php中使用GD库做验证码
Mar 31 #PHP
php实现搜索类封装示例
Mar 31 #PHP
PHP-FPM实现性能优化
Mar 31 #PHP
PHP实现通过URL提取根域名
Mar 31 #PHP
PHP的PDO操作简单示例
Mar 30 #PHP
PHP Smarty模版简单使用方法
Mar 30 #PHP
You might like
解决PHP里大量数据循环时内存耗尽的方法
2015/10/10 PHP
js url传值中文乱码之解决之道
2009/11/20 Javascript
基于jQuery的获取标签名的代码
2012/07/16 Javascript
深入理解javascript严格模式(Strict Mode)
2014/11/28 Javascript
Seajs 简易文档 提供简单、极致的模块化开发体验
2016/04/13 Javascript
js 获取经纬度的实现方法
2016/06/20 Javascript
js css实现垂直方向自适应的三角提示菜单
2016/06/26 Javascript
你知道setTimeout是如何运行的吗?
2016/08/16 Javascript
AngularJS实现按钮提示与点击变色效果
2016/09/07 Javascript
浅谈Nodejs中的作用域问题
2016/12/26 NodeJs
浅谈JavaScript中promise的使用
2017/01/11 Javascript
layui问题之模拟select点击事件的实例讲解
2018/08/15 Javascript
vue-cli3中vue.config.js配置教程详解
2019/05/29 Javascript
JS函数基本定义与用法示例
2020/01/15 Javascript
使用 UniApp 实现小程序的微信登录功能
2020/06/09 Javascript
[03:06]3分钟带你回顾DOTA2完美盛典&完美大师赛
2017/12/06 DOTA
Python内置的字符串处理函数整理
2013/01/29 Python
跟老齐学Python之做一个小游戏
2014/09/28 Python
在Django的URLconf中使用多个视图前缀的方法
2015/07/18 Python
利用Python自带PIL库扩展图片大小给图片加文字描述的方法示例
2017/08/08 Python
Python实现基于C/S架构的聊天室功能详解
2018/07/07 Python
Sanic框架路由用法实例分析
2018/07/16 Python
Python 输出时去掉列表元组外面的方括号与圆括号的方法
2018/12/24 Python
解决PySide+Python子线程更新UI线程的问题
2019/01/11 Python
Python 循环终止语句的三种方法小结
2019/06/24 Python
Python上下文管理器全实例详解
2019/11/12 Python
Python面向对象魔法方法和单例模块代码实例
2020/03/25 Python
原生canvas制作画图小工具的踩坑和爬坑
2020/06/09 HTML / CSS
美国网上购买眼镜:Eyeconic
2017/07/29 全球购物
漫威玩具服装及周边商品官方购物网站:Marvel Shop
2019/05/11 全球购物
公务员个人自我评价分享
2013/11/06 职场文书
小学毕业感言50字
2014/02/16 职场文书
2014年端午节活动方案
2014/03/11 职场文书
企业员工集体活动方案
2014/08/17 职场文书
庆祝教师节活动总结
2015/03/23 职场文书
MyBatis XPathParser解析器使用范例详解
2022/07/15 Java/Android