zoukankan      html  css  js  c++  java
  • PHP获取MAC地址的函数代码

    获取网卡的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;
    ?>

  • 相关阅读:
    HDU
    POJ-1325 Machine Schedule 二分图匹配 最小点覆盖问题
    HDU- 6437.Videos 最“大”费用流 -化区间为点
    曼哈顿最小生成树 全网最全
    牛客 136G-指纹锁 set容器重载
    牛客 136J-洋灰三角 +高中数学博大精深
    数学:矩阵快速幂
    数学:Burnside引理与Pólya定理
    数据结构:树上分块
    数据结构:Bitset
  • 原文地址:https://www.cnblogs.com/ZDPPU/p/5829022.html
Copyright © 2011-2022 走看看