• PHP获取网卡的MAC地址原码;目前支持WIN/LINUX系统 获取机器网卡的物理(MAC)地址


    声明转换于其它博客当中的。

    <?php 
        /** 
        获取网卡的MAC地址原码;目前支持WIN/LINUX系统 
        获取机器网卡的物理(MAC)地址 
        **/ 
             
        class GetMacAddr{ 
             
                var $return_array = array(); // 返回带有MAC地址的字串数组 
                var $mac_addr; 
             
                function GetMacAddr($os_type){ 
                     switch ( strtolower($os_type) ){ 
                              case "linux": 
                                        $this->forLinux(); 
                                        break; 
                              case "solaris": 
                                        break; 
                              case "unix": 
                                         break; 
                               case "aix": 
                                         break; 
                               default: 
                                         $this->forWindows(); 
                                         break; 
              
                      } 
              
                         
                      $temp_array = array(); 
                      foreach ( $this->return_array as $value ){ 
              
                                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 ) ){ 
                                         $this->mac_addr = $temp_array[0]; 
                                         break; 
                               } 
              
                      } 
                      unset($temp_array); 
                      return $this->mac_addr; 
                 } 
              
              
                 function forWindows(){ 
                      @exec("ipconfig /all", $this->return_array); 
                      if ( $this->return_array ) 
                               return $this->return_array; 
                      else{ 
                               $ipconfig = $_SERVER["WINDIR"]."system32ipconfig.exe"; 
                               if ( is_file($ipconfig) ) 
                                  @exec($ipconfig." /all", $this->return_array); 
                               else 
                                  @exec($_SERVER["WINDIR"]."systemipconfig.exe /all", $this->return_array); 
                               return $this->return_array; 
                      } 
                 } 
              
              
              
                 function forLinux(){ 
                      @exec("ifconfig -a", $this->return_array); 
                      return $this->return_array; 
                 } 
              
        } 
    //方法使用
    $mac = new GetMacAddr(PHP_OS); 
    echo $mac->mac_addr; 
    ?> 
    

     测试了一下是可以得出本地的MAC地址,访客的无法得到。

  • 相关阅读:
    遇到的StageFright问题 一 音视频因ALSA不同步
    stagefright
    细数开源历史上的九个重大事件
    AOP concepts (from spring.net document)
    javascript ECMA262概述
    Spring.net配置相关
    NUnit2.5 测试类几个方法
    Bill Gates 哈佛大学演讲 Never Surrend to Complexity
    iis6.0支持GZIP的详细设置方法
    Hessian是一个轻量级的remoting onhttp工具
  • 原文地址:https://www.cnblogs.com/kiter/p/3272363.html
Copyright © 2020-2023  润新知