- /**
- 获取机器网卡的物理(MAC)地址
- **/
- class GetMacAddr
- {
- var $return_array = array(); // 返回带有MAC地址的字串数组
- var $mac_addr;
-
- function GetMacAddr($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 "]. "system32ipconfig.exe ";
- if ( is_file($ipconfig) )
- @exec($ipconfig. " /all ", $this-> return_array);
- else
- @exec($_SERVER[ "WINDIR "]. "systemipconfig.exe /all ", $this-> return_array);
- return $this-> return_array;
- }
- }
-
- function forLinux()
- {
- @exec( "ifconfig -a ", $this-> return_array);
- return $this-> return_array;
- }
- }
- ?>
-
- $mac = new GetMacAddr(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