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 session有效期问题
Apr 26 PHP
openPNE常用方法分享
Nov 29 PHP
PHP spl_autoload_register实现自动加载研究
Dec 06 PHP
解析PHP多种序列化与反序列化的方法
Jun 06 PHP
php中strtotime函数用法详解
Nov 15 PHP
php中base_convert()进制数字转换函数实例
Nov 20 PHP
PHP中使用imagick实现把PDF转成图片
Jan 26 PHP
PHP树的深度编历生成迷宫及A*自动寻路算法实例分析
Mar 10 PHP
PHP中addslashes()和stripslashes()实现字符串转义和还原用法实例
Jan 07 PHP
Yii2中设置与获取别名的函数(setAlias和getAlias)用法分析
Jul 25 PHP
PHP 7.1中AES加解密方法mcrypt_module_open()的替换方案
Oct 17 PHP
PHP保留两位小数的几种方法
Jul 24 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
用windows下编译过的eAccelerator for PHP 5.1.6实现php加速的使用方法
2007/09/30 PHP
PHP中CURL的CURLOPT_POSTFIELDS参数使用细节
2014/03/17 PHP
46 个非常有用的 PHP 代码片段
2016/02/16 PHP
PHP数组的定义、初始化和数组元素的显示实现代码
2016/11/05 PHP
laravel框架中路由设置,路由参数和路由命名实例分析
2019/11/23 PHP
JavaScript下利用fso判断文件是否存在的代码
2010/12/11 Javascript
得到jQuery detach()后节点中的某个值实现代码
2013/02/05 Javascript
jQuery学习笔记之jQuery.extend(),jQuery.fn.extend()分析
2014/06/09 Javascript
使用JavaScript+canvas实现图片裁剪
2015/01/30 Javascript
jQuery Easyui实现左右布局
2016/01/26 Javascript
jQuery+ajax+asp.net获取Json值的方法
2016/06/08 Javascript
Vue.js实现一个自定义分页组件vue-paginaiton
2016/09/05 Javascript
详解JavaScript模块化开发
2016/12/04 Javascript
基于bootstrap的文件上传控件bootstrap fileinput
2016/12/23 Javascript
深入理解Commonjs规范及Node模块实现
2017/05/17 Javascript
vue v-on监听事件详解
2017/05/17 Javascript
IE11下使用canvas.toDataURL报SecurityError错误的解决方法
2017/11/19 Javascript
解决vue 引入子组件报错的问题
2018/09/06 Javascript
详解vue-cli@2.x项目迁移日志
2019/06/06 Javascript
详解js中的原型,原型对象,原型链
2020/07/16 Javascript
vue vant中picker组件的使用
2020/11/03 Javascript
[40:16]TFT vs Mski Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
Python3读取文件常用方法实例分析
2015/05/22 Python
python SVM 线性分类模型的实现
2019/07/19 Python
Jupyter Notebook折叠输出的内容实例
2020/04/22 Python
利用CSS3实现折角效果实例源码
2016/09/28 HTML / CSS
html5教你做炫酷的碎片式图片切换 (canvas)
2017/07/28 HTML / CSS
美国气象仪器、花园装饰和墙壁艺术商店:Wind & Weather
2019/05/29 全球购物
描述JSP和Servlet的区别、共同点、各自应用的范围
2012/10/02 面试题
高校十八大报告感想
2014/01/27 职场文书
教学评估实施方案
2014/03/16 职场文书
拖欠货款起诉状
2015/05/20 职场文书
2015年法务工作总结范文
2015/05/23 职场文书
关于童年的读书笔记
2015/06/26 职场文书
思想工作总结范文
2015/08/12 职场文书
能让Python提速超40倍的神器Cython详解
2021/06/24 Python