1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > php 获取路由器mac地址 php如何获取网卡MAC地址(支持WIN与LINUX系统)

php 获取路由器mac地址 php如何获取网卡MAC地址(支持WIN与LINUX系统)

时间:2020-11-05 07:45:49

相关推荐

php 获取路由器mac地址 php如何获取网卡MAC地址(支持WIN与LINUX系统)

/**

获取网卡的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"]."\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;

}

}

function forLinux(){

@exec("ifconfig -a", $this->return_array);

return $this->return_array;

}

}

//方法使用

$mac = new GetMacAddr(PHP_OS);

echo $mac->mac_addr; //机器的真实MAC地址,请注释掉

?>

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。