转自:http://www.jbxue.com/article/12635.html
分享一例php取得机器mac地址的代码,学习下php读取硬件信息的方法,此代码适用于windows、linux系统。有需要的朋友参考学习下。
本节分享的php代码,主要功能:
获取机器网卡的物理(MAC)地址。
代码:
复制代码代码如下:
<?php
/**
* 获取机器网卡的物理(MAC)地址
* 目前支持WIN/LINUX系统
* 编辑:www.jbxue.com
**/
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;
?>
相关推荐
最后,通过创建 `GetMacAddr` 类的一个实例,并传递当前操作系统的类型 (`PHP_OS`) 作为参数,可以获取当前设备的 MAC 地址。例如: ```php $mac = new GetMacAddr(PHP_OS); echo $mac->mac_addr; ``` 这行代码将...
另外,由于获取MAC地址可能涉及到系统的敏感信息,因此在处理这类数据时,应遵循最小权限原则,避免不必要的安全风险。 总结来说,这个压缩包提供的是一种通过PHP获取单个网卡MAC地址的方法。通过学习和理解`...
### PHP获取MAC地址的实现方法 在PHP中,可以通过内置的系统函数和命令执行来获取MAC地址。给定的代码片段展示了一种可能的实现方式,其中定义了一个名为`GetMacAddr`的类,该类提供了一种面向对象的接口来获取网卡...
在本文中,我们将详细探讨如何利用PHP脚本实现获取局域网内所有电脑的IP地址、主机名以及MAC地址。 首先,我们来详细说明标题中提到的三个重要网络标识:IP地址、主机名和MAC地址。IP地址是互联网协议地址,用于在...
### PHP 获取网卡的 MAC 地址:支持 WIN/LINUX 系统 #### 知识点一:MAC 地址简介 MAC(Media Access Control)地址是为网络接口控制器(NIC)分配的唯一标识符,通常由六个二进制八位组组成。每个设备上的 NIC 都...
【PHP实例开发源码—IPAM IP地址管理系统.zip】是一个基于PHP编程语言的源代码包,主要用于构建一个IP地址管理(IPAM)系统。IPAM是网络管理领域的一个关键组件,它帮助管理员有效地追踪、分配和管理网络中的IPv4和...
【标题】"PHP实例开发源码—PHP表单程序.zip" 涉及的主要知识点是PHP编程语言在创建表单程序中的应用。PHP(Hypertext Preprocessor)是一种广泛使用的开源脚本语言,尤其适用于Web开发,可嵌入HTML中。这个压缩包很...
【标题】"PHP实例开发源码—github page博客系统.zip" 涉及的主要知识点是PHP编程语言在创建GitHub Page博客系统中的应用。这个压缩包很可能是包含了一个完整的PHP源代码项目,用于构建个人或组织的静态网页托管平台...
《PHP实例开发源码——TbsZip(Zip处理类) php版 v2.1.5》 在PHP中,处理压缩文件是一项常见的任务,而TbsZip是一个强大的PHP类库,专为处理ZIP文件而设计。这个开源项目,版本号为v2.1.5,提供了丰富的功能,使...
4. **网络信息**:展示网络接口的状态,包括IP地址、MAC地址、连接速度和接收/发送的数据量。 5. **进程信息**:列出当前运行的进程,包括进程ID、用户、CPU和内存占用。 6. **温度监控**:如果硬件支持,可以显示...
5. 多平台支持:Empirebak不仅适用于Linux环境,也能够在Windows、Mac OS等操作系统上运行,具备良好的跨平台兼容性。 二、Empirebak工作原理 Empirebak的核心原理是通过PHP连接数据库,执行SQL语句来读取并存储...
- **操作系统**:PHP可在多种操作系统上运行,包括Linux、Unix的各种变种、Windows系列、Mac OS X等。 - **Web服务软件**:支持PHP的主要Web服务器有Apache、IIS、PWS、Netscape等,其中Apache和IIS最为常用。 2....
标题中提到的知识点是“PHP获取浏览器信息类和客户端地理位置的2个方法”。这部分内容主要涉及到使用PHP编程语言对客户端的浏览器信息以及地理位置进行探测和获取。具体而言,我们可以从中提取出以下几个关键的知识...
PHP支持多种数据库系统,如MySQL、PostgreSQL等,具有良好的跨平台性,能够运行在Windows、Linux、Mac OS等多种操作系统上。PHP语法简洁,易于学习,因此成为了许多初学者入门Web开发的首选语言。 AjaXplorer的名称...
获取 PHP 数据库问题 安装 — 安装常见问题 编译问题 使用 PHP Password Hashing — Safe Password Hashing PHP 和 HTML PHP 和 COM PHP 和其它语言 从 PHP 4 移植到 PHP 5 杂类问题 附录...
■获取 PHP ■数据库问题 ■安装 — 安装常见问题 ■编译问题 ■使用 PHP ■Password Hashing — Safe Password Hashing ■PHP 和 HTML ■PHP 和 COM ■PHP 和其它语言 ■从 PHP 4 移植到 PHP 5 ■杂类问题 ■附录...
第二卷地址: http://download.csdn.net/source/2711946 php_manual_zh-PHP中文手册(2010-08-16).part1.rar PHP 手册 by: Mehdi Achour Friedhelm Betz Antony Dovgal Nuno Lopes Hannes Magnusson Georg ...