PHP

首页 -  PHP  -  PHP获取设备Mac地址唯一标识

PHP获取设备Mac地址唯一标识

PHP获取设备Mac地址唯一标识(服务端)


public $return_array = array(); // 返回带有MAC地址的字串数组
public $mac_addr; //mac地址

public function getMacAddress($os_type)
{
    switch(strtolower($os_type))
    {
        case "linux":$this->forLinux();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;
}

/**
 * @return array
 * window
 */
public function forWindows()
{
    @exec("ipconfig /all", $this->return_array);
    if ( $this->return_array ) {

        return $this->return_array;
    }else {
        $ipconfig = $_SERVER["WINDIR"]."\system32\ipconfig.exe";
        if ( is_file($ipconfig) ) {
            @exec($ipconfig." /all", $this->return_array);
        } else {
            @exec($_SERVER["WINDIR"]."\system\ipconfig.exe /all", $this->return_array);
        }
        return $this->return_array;
    }
}

/**
 * @return array
 * linux
 */
public function forLinux()
{
    @exec("ifconfig -a", $this->return_array);
    return $this->return_array;
}


//调用:
$this->getMacAddress(PHP_OS);
var_dump($this->mac_addr);


(0)
分享:

本文由:xiaoshu168 作者:xiaoshu发表,转载请注明来源!

标签:

相关阅读