技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> MySQL --> php获取网卡MAC地址类

php获取网卡MAC地址类

浏览:3580次  出处信息
忽然想到,判断同机登陆的问题。记录MAC是个好办法,顺便查了这个PHP方法,备注以便以后使用。
实现很简单,就是分别调用系统命令,返回到数组中。
  1. <?php   
  2. class GetMacAddr   
  3. {   
  4.         var $return_array = array(); // 返回带有MAC地址的字串数组   
  5.         var $mac_addr=array();   
  6.            
  7.         function GetMacAddr()   
  8.         {   
  9.              switch (strtolower(PHP_OS) )   
  10.                 {   
  11.                         case "linux":$this->forLinux();break;   
  12.                         case "solaris":break;   
  13.                         case "unix":break;   
  14.                         case "aix":break;   
  15.                         default:$this->forWindows();break;   
  16.                 }   
  17.        
  18.                    
  19.                 $temp_array = array();   
  20.                 foreach ( $this->return_array as $value )   
  21.                 {   
  22.                         if ( preg_match( "/[0-9a-f][0-9a-f][:-]"."[0-9a-f][0-9a-f][:-]"."[0-9a-f][0-9a-f][:-]"."[0-9a-f][0-9a-f][:-]"."[0-9a-f][0-9a-f][:-]"."[0-9a-f][0-9a-f]/i"$value$temp_array ) )   
  23.                         {   
  24.                                 $this->mac_addr[] = $temp_array[0];   
  25.                         }   
  26.                 }   
  27.                 unset($temp_array);   
  28.                 return $this->mac_addr;   
  29.         }   
  30.   
  31.         function forWindows()   
  32.         {   
  33.                 @exec("ipconfig /all"$this->return_array);   
  34.                 if ( $this->return_array )   
  35.                         return $this->return_array;   
  36.                 else{   
  37.                         $ipconfig = $_SERVER["WINDIR"]."\system32\ipconfig.exe";   
  38.                         if ( is_file($ipconfig) )   
  39.                            @exec($ipconfig." /all"$this->return_array);   
  40.                         else  
  41.                            @exec($_SERVER["WINDIR"]."\system\ipconfig.exe /all"$this->return_array);   
  42.                         return $this->return_array;   
  43.                 }   
  44.         }   
  45.   
  46.         function forLinux()   
  47.         {   
  48.                 @exec("ifconfig -a"$this->return_array);   
  49.                 return $this->return_array;   
  50.         }   
  51. }   
  52.   
  53. $mac = new GetMacAddr();   
  54. echo "<pre>";   
  55. print_r( $mac->mac_addr);   
  56. ?>   
  57.   

建议继续学习:

  1. Mac下使用SecureCRT的一些记录    (阅读:6616)
  2. 也说 Mac 的不好    (阅读:6330)
  3. 如何查看Linux 硬件配置信息    (阅读:5865)
  4. mac系统更换硬盘及初始化开发环境的记录    (阅读:5459)
  5. 在Mac OS X中运行Apache + PHP + MySQL    (阅读:4365)
  6. 如何设置双网卡路由    (阅读:4451)
  7. Macbook Air换电池教程    (阅读:4191)
  8. MYSQL数据库网卡软中断不平衡问题及解决方案    (阅读:3766)
  9. Mac 锁屏的各种方法    (阅读:3806)
  10. linux双网卡双网关,不同IP段的设置    (阅读:3233)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1