zoukankan      html  css  js  c++  java
  • 获取机器网卡的物理(MAC)地址

    <?php  
    /**   
    * 获取机器网卡的物理(MAC)地址
    * 目前支持WIN/LINUX系统   
    * 编辑: www.jbxue.com
    **/  
    class MacAddInfo {      
        var $return_array = array (); // 返回带有MAC地址的字串数组    
        var $mac_addr;  
          
        function MacAddInfo($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 MacAddInfo(PHP_OS);    
    //echo $mac->mac_addr;    
    ?> 

  • 相关阅读:
    水晶报表 注册码
    黑马孕育期盘口的技术辨识(转贴)
    如何判断庄家出货(转贴)
    解决方案:用户 'sa' 登录失败。原因: 未与信任 SQL Server 连接相关联。
    水晶报表学习资料
    (网上收集)asp.net页面打印问题?
    arcgis地理配准第二种方法:利用已知控制点 (Spatial Adjustment和Georeferencing的区别)
    Vue父子组件之间通信
    Vue怎么引用组件和使用组件?
    ESLint:error 'reject' is defined but never used nounusedvars
  • 原文地址:https://www.cnblogs.com/alex-13/p/4520277.html
Copyright © 2011-2022 走看看