PHP获取MAC地址的函数代码


Posted in PHP onSeptember 11, 2011
<?php 
/** 
获取网卡的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; 
?>
PHP 相关文章推荐
web方式ftp
Oct 09 PHP
PHP的5个安全措施小结
Jul 17 PHP
解析dedecms空间迁移步骤详解
May 15 PHP
$_GET['goods_id']+0 的使用详解
Jun 06 PHP
PHP计数器的实现代码
Jun 08 PHP
PHP PDO fetch 模式各种参数的输出结果一览
Jan 07 PHP
discuz图片顺序混乱解决方案
Jul 29 PHP
crontab无法执行php的解决方法
Jan 25 PHP
Joomla调用系统自带编辑器的实现方法
May 05 PHP
smarty循环嵌套用法示例分析
Jul 19 PHP
PHP二维数组去重实例分析
Nov 18 PHP
在laravel中实现事务回滚的方法
Oct 10 PHP
PHP内核介绍及扩展开发指南―基础知识
Sep 11 #PHP
PHP 命令行工具 shell_exec, exec, passthru, system详细使用介绍
Sep 11 #PHP
20个PHP常用类库小结
Sep 11 #PHP
php各种编码集详解和以及在什么情况下进行使用
Sep 11 #PHP
php正则表达式(regar expression)
Sep 10 #PHP
PHP setcookie指定domain参数后,在IE下设置cookie失效的解决方法
Sep 09 #PHP
判断PHP数组是否为空的代码
Sep 08 #PHP
You might like
mantis安装、配置和使用中的问题小结
2014/07/14 PHP
php版银联支付接口开发简明教程
2016/10/14 PHP
php实现的读取CSV文件函数示例
2017/02/07 PHP
jQuery照片伸缩效果不影响其他元素的布局
2014/05/09 Javascript
JS或jQuery获取ASP.NET服务器控件ID的方法
2015/06/08 Javascript
详解JavaScript中shift()方法的使用
2015/06/09 Javascript
javascript电商网站抢购倒计时效果实现
2015/11/19 Javascript
JavaScript DOM 对象深入了解
2016/07/20 Javascript
js修改onclick动作的四种方法(推荐)
2016/08/18 Javascript
深入浅析JavaScript中的3DES
2016/08/24 Javascript
jQuery返回定位插件详解
2017/05/15 jQuery
node文件上传功能简易实现代码
2017/06/16 Javascript
原生js封装运动框架的示例讲解
2017/10/01 Javascript
vue双向绑定及观察者模式详解
2019/03/19 Javascript
Angular脚手架开发的实现步骤
2019/04/09 Javascript
vue 授权获取微信openId操作
2020/11/13 Javascript
[48:48]2014 DOTA2国际邀请赛中国区预选赛 SPD-GAMING VS Dream TIME
2014/05/21 DOTA
初步讲解Python中的元组概念
2015/05/21 Python
python过滤字符串中不属于指定集合中字符的类实例
2015/06/30 Python
Python3实战之爬虫抓取网易云音乐的热门评论
2017/10/09 Python
Python装饰器原理与简单用法实例分析
2018/04/29 Python
python求绝对值的三种方法小结
2019/12/04 Python
python实现一个简单RPC框架的示例
2020/10/28 Python
学会迭代器设计模式,帮你大幅提升python性能
2021/01/03 Python
python 实现Requests发送带cookies的请求
2021/02/08 Python
美国照明、家居装饰和家具购物网站:Bellacor
2017/09/20 全球购物
世界上最大的乐器零售商:Guitar Center
2017/11/07 全球购物
存储过程的优点有哪些
2012/09/27 面试题
Internet主要有哪些网络群组成
2015/12/24 面试题
JAVA招聘远程笔试题
2015/07/23 面试题
敬老文明号事迹材料
2014/01/16 职场文书
公司食堂管理制度
2015/08/05 职场文书
工作感想范文
2015/08/07 职场文书
Java实现简易的分词器功能
2021/06/15 Java/Android
WebWorker 封装 JavaScript 沙箱详情
2021/11/02 Javascript
如何更改Win11声音输出设备?Win11声音输出设备四种更改方法
2022/04/08 数码科技