php获取服务器端mac和客户端mac的地址支持WIN/LINUX

2015-01-24信息快讯网

这篇文章主要介绍了php获取服务器端mac和客户端mac地址的方法,需要的朋友可以参考下

获取服务器mac
 
<?php 
/** 
获取网卡的MAC地址原码;目前支持WIN/LINUX系统 
获取机器网卡的物理(MAC)地址 
**/ 
class GetmacAddr{ 
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; 
} 
} 
} 
} 
?> 

获取客户端mac地址:
 
@exec("arp -a",$array); //执行arp -a命令,结果放到数组$array中 
foreach($array as $value){ 
//匹配结果放到数组$mac_array 
if(strpos($value,$_SERVER["REMOTE_ADDR"]) && preg_match("/(:?[0-9A-F]{2}[:-]){5}[0-9A-F]{2}/i",$value,$mac_array)){ 
$mac = $mac_array[0]; 
break; 
} 
} 
echo $mac; 

注:客户端获取的mac不能在本机测试,只能用别的电脑访问才能输出
使用PHPMailer实现邮件发送代码分享
ThinkPHP整合百度Ueditor图文教程
PHP启动windows应用程序、执行bat批处理、执行cmd命令的方法(exec、system函数详解)
php生成百度sitemap站点地图类函数实例
PHP 抽象方法与抽象类abstract关键字介绍及应用
php开启与关闭错误提示适用于没有修改php.ini的权限
ThinkPHP基于PHPExcel导入Excel文件的方法
ThinkPHP分页实例
PHP+jQuery 注册模块的改进(三):更新到Smarty3.1
Linux下安装oracle客户端并配置php5.3
在Win7 中为php扩展配置Xcache
PHP错误Warning: Cannot modify header information - headers already sent by解决方法
php实现的支持imagemagick及gd库两种处理的缩略图生成类
PHP正则替换函数preg_replace和preg_replace_callback使用总结
PHP下的Oracle客户端扩展(OCI8)安装教程
mac环境中使用brew安装php5.5.15
php实现获取局域网所有用户的电脑IP和主机名、及mac地址完整实例
mac下Apache + MySql + PHP搭建网站开发环境
php自定义函数截取汉字长度
php小技巧之过滤ascii控制字符
phpMyAdmin自动登录和取消自动登录的配置方法
PHP.ini中配置屏蔽错误信息显示和保存错误日志的例子
linux使用crontab实现PHP执行计划定时任务
PHP实现把MySQL数据库导出为.sql文件实例(仿PHPMyadmin导出功能)
thinkphp实现面包屑导航(当前位置)例子分享
codeigniter框架The URI you submitted has disallowed characters错误解决方法
php加速器eAccelerator的配置参数、API详解
PHP的preg_match匹配字符串长度问题解决方法
php获取网卡的MAC地址支持WIN/LINUX系统
yii框架配置默认controller和action示例
php中使用getimagesize获取图片、flash等文件的尺寸信息实例
在PHP模板引擎smarty生成随机数的方法和math函数详解
PHP模板引擎Smarty的缓存使用总结
CodeIgniter框架提示Disallowed Key Characters的解决办法
PHP获取MAC地址的具体实例
mac下安装nginx和php
©2014-2024 dbsqp.com