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采集相关教程之一 CURL函数库
Feb 15 PHP
PHP 缓存实现代码及详细注释
May 16 PHP
PHP性能优化 产生高度优化代码
Jul 22 PHP
php中使用__autoload()自动加载未定义类的实现代码
Feb 06 PHP
PHP之短标签开启设置
Jun 17 PHP
PHP函数getenv简介和使用实例
May 12 PHP
php中ftp_chdir与ftp_cdup函数用法
Nov 18 PHP
thinkPHP5.0框架模块设计详解
Mar 18 PHP
PHP实现的函数重载功能示例
Aug 03 PHP
微信公众平台开发教程④ ThinkPHP框架下微信支付功能图文详解
Apr 10 PHP
php简单检测404页面的方法示例
Aug 23 PHP
使用git迁移Laravel项目至新开发环境的步骤详解
Apr 06 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
php动态变量定义及使用
2015/06/10 PHP
解决jquery1.9不支持browser对象的问题
2013/11/13 Javascript
初始Nodejs
2014/11/08 NodeJs
nodejs中简单实现Javascript Promise机制的实例
2014/12/06 NodeJs
基于JQuery实现分隔条的功能
2016/06/17 Javascript
微信小程序 ES6Promise.all批量上传文件实现代码
2017/04/14 Javascript
基于ionic实现下拉刷新功能
2018/05/10 Javascript
vue-cli 打包使用history模式的后端配置实例
2018/09/20 Javascript
koa源码中promise的解读
2018/11/13 Javascript
jQuery实现的导航条点击后高亮显示功能示例
2019/03/04 jQuery
微信小程序云开发使用方法新手初体验
2019/05/16 Javascript
python抓取网页内容示例分享
2014/02/24 Python
Python实现批量读取word中表格信息的方法
2015/07/30 Python
Python 多进程和数据传递的理解
2017/10/09 Python
机器学习10大经典算法详解
2017/12/07 Python
Jupyter中直接显示Matplotlib的图形方法
2018/05/24 Python
python利用requests库进行接口测试的方法详解
2018/07/06 Python
Python 多线程不加锁分块读取文件的方法
2018/12/11 Python
Python之循环结构
2019/01/15 Python
Python3转换html到pdf的不同解决方案
2019/03/11 Python
PyTorch加载预训练模型实例(pretrained)
2020/01/17 Python
如何基于pythonnet调用halcon脚本
2020/01/20 Python
使用CSS3制作倾斜导航条和毛玻璃效果
2017/09/12 HTML / CSS
Square Off美国/加拿大:世界上最聪明的国际象棋棋盘
2018/12/06 全球购物
美国气象仪器、花园装饰和墙壁艺术商店:Wind & Weather
2019/05/29 全球购物
南非最大的在线时尚商店:Zando
2019/07/21 全球购物
地球鞋加拿大官网:Earth Shoes Canada
2020/11/17 全球购物
如何找出EMP表里面SALARY第N高的employee
2013/12/05 面试题
资料员岗位职责
2013/11/17 职场文书
中学生国旗下讲话稿
2014/04/26 职场文书
学生党员一帮一活动总结
2014/07/08 职场文书
写给老师的感谢信
2015/01/20 职场文书
导游词之南京莫愁湖公园
2019/11/13 职场文书
Angular性能优化之第三方组件和懒加载技术
2021/05/10 Javascript
Vue如何清空对象
2022/03/03 Vue.js
Python之Matplotlib绘制热力图和面积图
2022/04/13 Python