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 单引号与双引号的区别
Nov 24 PHP
rrmdir php中递归删除目录及目录下的文件
May 15 PHP
基于PHP中的常用函数回顾
Jul 11 PHP
PHP添加Xdebug扩展的方法
Feb 12 PHP
php通过文件流方式复制文件的方法
Mar 13 PHP
如何使用PHP Embed SAPI实现Opcodes查看器
Nov 10 PHP
PHP中Restful api 错误提示返回值实现思路
Apr 12 PHP
laravel学习教程之存取器
Jul 30 PHP
php实现不通过扩展名准确判断文件类型的方法【finfo_file方法与二进制流】
Apr 18 PHP
PHP 传输会话curl函数的实例详解
Sep 12 PHP
PHP扩展mcrypt实现的AES加密功能示例
Jan 29 PHP
PHP实现15位身份证号转18位的方法分析
Oct 16 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将整个网站生成HTML纯静态网页的方法总结
2012/02/05 PHP
使用Linux五年积累的一些经验技巧
2013/06/20 PHP
PHP下通过QRCode类库创建中间带网站LOGO的二维码
2014/07/12 PHP
php观察者模式应用场景实例详解
2017/02/03 PHP
php实现文件与16进制相互转换的方法示例
2017/02/16 PHP
PHP实现将标点符号正则替换为空格的方法
2017/08/09 PHP
浅谈php常用的7大框架的优缺点
2020/07/20 PHP
基于jquery的拖动布局插件
2011/11/25 Javascript
在服务端(Page.Write)调用自定义的JS方法详解
2013/08/09 Javascript
js完美解决IE6不支持position:fixed的bug
2015/04/24 Javascript
jQuery实现的五子棋游戏实例
2015/06/13 Javascript
jQuery中trigger()与bind()用法分析
2015/12/18 Javascript
javascript实现下雪效果【实例代码】
2016/05/03 Javascript
第一篇初识bootstrap
2016/06/21 Javascript
jQuery包裹节点用法完整示例
2016/09/13 Javascript
利用jquery实现实时更新歌词的方法
2017/01/06 Javascript
使用Vue自定义数字键盘组件(体验度极好)
2017/12/19 Javascript
createObjectURL方法实现本地图片预览
2019/09/30 Javascript
vue子传父关于.sync与$emit的实现
2019/11/05 Javascript
vue自定义指令限制输入框输入值的步骤与完整代码
2020/08/30 Javascript
学习Python3 Dlib19.7进行人脸面部识别
2018/01/24 Python
TensorFlow神经网络优化策略学习
2018/03/09 Python
python async with和async for的使用
2019/06/20 Python
python批量修改ssh密码的实现
2019/08/08 Python
python设置环境变量的作用整理
2020/02/17 Python
哥伦比亚最大的网上商店:Linio哥伦比亚
2016/09/25 全球购物
美国购买舞会礼服网站:Couture Candy
2019/12/29 全球购物
桥梁与隧道工程专业本科生求职信
2013/10/08 职场文书
学校四风对照检查材料
2014/08/28 职场文书
住宿生擅自离校检讨书
2014/09/22 职场文书
交通局领导班子群众路线教育实践活动对照检查材料思想汇报
2014/10/09 职场文书
2014年话务员工作总结
2014/11/19 职场文书
大学生青年志愿者活动总结
2015/05/06 职场文书
基于MySql验证的vsftpd虚拟用户
2021/11/07 MySQL
php去除deprecated的实例方法
2021/11/17 PHP
基于Python实现nc批量转tif格式
2022/08/14 Python