-
-
/**
- * 获取机器网卡的物理(MAC)地址
- * 目前支持WIN/LINUX系统
- * 编辑: bbs.it-home.org
- **/
- 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;
- ?>
-
复制代码
|
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31