PHP获取MAC地址的具体实例


Posted in PHP onDecember 13, 2013

本节分享的php代码,主要功能:
获取机器网卡的物理(MAC)地址。
代码:

<?php  
/**   
* 获取机器网卡的物理(MAC)地址
* 目前支持WIN/LINUX系统   
**/  
class MacAddInfo {      
    var $return_array = array (); // 返回带有MAC地址的字串数组    
    var $mac_addr;      function MacAddInfo($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 MacAddInfo(PHP_OS);    
//echo $mac->mac_addr;    
?>
PHP 相关文章推荐
php桌面中心(二) 数据库写入
Mar 11 PHP
php数组去重的函数代码
Feb 03 PHP
PHP查询网站的PR值
Oct 30 PHP
PHP date函数常用时间处理方法
May 11 PHP
php使用MySQL保存session会话的方法
Jun 18 PHP
yii2带搜索功能的下拉框实例详解
May 12 PHP
PHP编写的图片验证码类文件分享
Jun 06 PHP
PHP实现的mysql主从数据库状态检测功能示例
Jul 20 PHP
PHP PDOStatement::bindParam讲解
Jan 30 PHP
原生PHP实现导出csv格式Excel文件的方法示例【附源码下载】
Mar 07 PHP
PHP多进程通信-消息队列使用
Mar 08 PHP
ThinkPHP5与单元测试PHPUnit使用详解
Feb 23 PHP
php配合jquery实现增删操作具体实例
Dec 12 #PHP
php文件上传的例子及参数详解
Dec 12 #PHP
PHP 提取图片img标记中的任意属性的简单实例
Dec 10 #PHP
PHP eval函数使用介绍
Dec 08 #PHP
Server.HTMLEncode让代码在页面里显示为源代码
Dec 08 #PHP
php自定义的格式化时间示例代码
Dec 05 #PHP
php调整gif动画图片尺寸示例代码分享
Dec 05 #PHP
You might like
基于empty函数的判断详解
2013/06/17 PHP
CentOS下PHP7的编译安装及MySQL的支持和一些常见问题的解决办法
2015/12/17 PHP
php 解决substr()截取中文字符乱码问题
2016/07/18 PHP
javascript实现div浮动在网页最顶上并带关闭按钮效果实例
2013/08/13 Javascript
js的for in循环和java里foreach循环的区别分析
2015/01/28 Javascript
jQuery实现的简单提示信息插件
2015/12/08 Javascript
AngularJS使用ngOption实现下拉列表的实例代码
2016/01/23 Javascript
JS之相等操作符详解
2016/09/13 Javascript
JS编写函数实现对身份证号码最后一位的验证功能
2016/12/29 Javascript
H5实现仿flash效果的实现代码
2017/09/29 Javascript
深入Vue-Router路由嵌套理解
2018/08/13 Javascript
详解vue使用插槽分发内容slot的用法
2019/03/28 Javascript
详解将微信小程序接口Promise化并使用async函数
2019/08/05 Javascript
jQuery实现滑动星星评分效果(每日分享)
2019/11/13 jQuery
js实现轮播图效果 z-index实现轮播图
2020/01/17 Javascript
python 数据加密代码
2008/12/24 Python
python实现定制交互式命令行的方法
2014/07/03 Python
Python里disconnect UDP套接字的方法
2015/04/23 Python
wxPython使用系统剪切板的方法
2015/06/16 Python
Python基于pygame实现图片代替鼠标移动效果
2015/11/11 Python
Python中操作mysql的pymysql模块详解
2016/09/13 Python
利用Django-environ如何区分不同环境
2018/08/26 Python
使用pandas把某一列的字符值转换为数字的实例
2019/01/29 Python
使用批处理脚本自动生成并上传NuGet包(操作方法)
2019/11/19 Python
关于Python turtle库使用时坐标的确定方法
2020/03/19 Python
python 在threading中如何处理主进程和子线程的关系
2020/04/25 Python
Python之Sklearn使用入门教程
2021/02/19 Python
HTML5 canvas实现的静态循环滚动播放弹幕
2021/01/05 HTML / CSS
英国护肤品购物网站:Beauty Expert
2016/08/19 全球购物
生物制药毕业生自荐信
2013/10/16 职场文书
主办会计岗位职责
2014/03/13 职场文书
四年级学生评语大全
2014/04/21 职场文书
文明班级建设方案
2014/05/15 职场文书
继续教育个人总结
2015/03/03 职场文书
2016年社区植树节活动总结
2016/03/16 职场文书
分享node.js实现简单登录注册的具体代码
2022/04/26 NodeJs