当前位置:首页 > PHP教程 > php应用 > 列表

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

发布:smiling 来源: PHP粉丝网  添加日期:2019-10-20 19:43:29 浏览: 评论:0 

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

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

  1. function getLocalIP() { 
  2.  
  3.  $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/"
  4.  
  5. //获取操作系统为win2000/xp、win7的本机IP真实地址 
  6.  
  7.  exec("ipconfig"$out$stats); 
  8.  
  9.  if (!emptyempty($out)) { 
  10.  
  11.   foreach ($out AS $row) { 
  12.  
  13.    if (strstr($row"IP") && strstr($row":") && !strstr($row"IPv6")) { 
  14.  
  15.     $tmpIp = explode(":"$row); 
  16.  
  17.     if (preg_match($preg, trim($tmpIp[1]))) { 
  18.  
  19.      return trim($tmpIp[1]); 
  20.  
  21.     } 
  22.  
  23.    } 
  24.  
  25.   } 
  26.  
  27.  } 
  28.  
  29. //获取操作系统为linux类型的本机IP真实地址 
  30.  
  31.  exec("ifconfig"$out$stats); 
  32.  
  33.  if (!emptyempty($out)) { 
  34.  
  35.   if (isset($out[1]) && strstr($out[1], 'addr:')) { 
  36.  
  37.    $tmpArray = explode(":"$out[1]); 
  38.  
  39.    $tmpIp = explode(" "$tmpArray[1]); 
  40.  
  41.    if (preg_match($preg, trim($tmpIp[0]))) { 
  42.  
  43.     return trim($tmpIp[0]); 
  44.  
  45.    } 
  46.  
  47.   } 
  48.  
  49.  } 
  50.  
  51.  return '127.0.0.1'
  52.  

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

Tags: php本机真实IP

分享到: