加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > PHP > 正文

php 获取网卡物理(MAC)地址的实现方法

发布时间:2020-05-25 23:43:14 所属栏目:PHP 来源:互联网
导读:php 获取网卡物理(MAC)地址的实现方法

感兴趣的小伙伴,下面一起跟随脚本之家 jb51.cc的小编来看看吧。
经测试代码如下:


/**
 *  获取网卡物理(MAC)地址
 *
 * @param 
 * @author 脚本之家 jb51.cc jb51.cc
 **/
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; 
?>


/***   代码来自脚本之家 jb51.cc(jb51.cc)   ***/

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读