php获取客户端网卡mac物理地址
在php编程中,获取到用户mac地址,就可以实现与客户电脑的绑定、防止垃圾注册等。
一个非常简单的类,使用时只要实例化后直接打印它的macAddr属性即可。
代码:
<?php
class Getmac{
var $result = array(); // 返回带有MAC地址的字串数组
var $macAddr;
/*构造*/
function __construct($osType){
switch ( strtolower($osType) ){
case "unix": break;
case "solaris": break;
case "aix": break;
case "linux": {
$this->for_linux_os();
}break;
default: {
$this->for_windows_os();
}break;
}
$temp_array = array();
foreach($this->result 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->macAddr = $temp_array[0];
break;
}
}
unset($temp_array);
return $this->macAddr;
}
/*linux系统中获取方法*/
function for_linux_os(){
@exec("ifconfig -a", $this->result);
return $this->result;
}
/*win系统中的获取方法*/
function for_windows_os(){
@exec("ipconfig /all", $this->result);
if ( $this->result ) {
return $this->result;
} else {
$ipconfig = $_SERVER["WINDIR"]."\system32\ipconfig.exe";
if(is_file($ipconfig)) {
@exec($ipconfig." /all", $this->result);
} else {
@exec($_SERVER["WINDIR"]."\system\ipconfig.exe /all", $this->result);
return $this->result;
}
}
}
}
/*1.实现化类 2.直接访问它的macAddr属性*/
$getMac = new Getmac(PHP_OS);
echo $getMac->macAddr;
?>
您可能感兴趣的文章:
php获取电脑MAC地址的代码举例
php获取网卡MAC地址与URL中主域的代码
什么是MAC地址-基础知识
php 获取网站地址的函数代码
php取客户端MAC地址的代码
php获取计算机唯一标识信息(cpu,网卡,MAC地址)的代码
php获取远程客户端真实ip地址
PHP获取MAC地址的实现代码
js获取客户端网卡ip地址与mac地址
php如何获取网卡MAC地址(支持WIN与LINUX系统)