ホームページ > バックエンド開発 > PHPチュートリアル > MACアドレスを取得するためのPHP実装コード

MACアドレスを取得するためのPHP実装コード

WBOY
リリース: 2016-07-25 08:56:08
オリジナル
1314 人が閲覧しました
  1. /**

  2. * マシンのネットワーク カードの物理 (MAC) アドレスを取得します
  3. * 現在 WIN/LINUX システムをサポートしています
  4. * 編集者: bbs.it-home.org
  5. **/
  6. class MacAddInfo {
  7. var $return_array = array (); // MAC アドレスを持つ文字列数集合を返します
  8. var $mac_addr;
  9. function MacAddInfo($os_type) {
  10. switch (strto lower ( $os_type )) {
  11. case "linux" :
  12. $this->forLinux ();
  13. 休憩;
  14. ケース「ソラリス」:
  15. ブレーク;
  16. case "unix" :
  17. ブレーク;
  18. case "aix" :
  19. ブレーク;
  20. デフォルト :
  21. $this->forWindows ();
  22. 休憩;
  23. }

  24. $temp_array = 配列();

  25. foreach ( $this->return_array as $value ) {
  26. 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 )) {
  27. $this->mac_addr = $temp_array [0];
  28. 休憩;
  29. }
  30. }
  31. unset ( $temp_array );
  32. $this->mac_addr; を返す
  33. }
  34. function forWindows() {
  35. @exec ( "ipconfig /all", $this->return_array );
  36. if ($this->return_array)
  37. return $this->return_array;
  38. else {
  39. $ipconfig = $_SERVER ["WINDIR"] 。 "system32ipconfig.exe";
  40. if (is_file ( $ipconfig ))
  41. @exec ( $ipconfig . " /all", $this->return_array );
  42. else
  43. @exec ( $_SERVER ["WINDIR"] . "systemipconfig.exe /all", $this->return_array );
  44. return $this->return_array;
  45. }
  46. }
  47. function forLinux() {
  48. @exec ( "ifconfig -a", $this->return_array );
  49. return $this->return_array;
  50. }
  51. }
  52. //调用例
  53. //$mac = new MacAddInfo(PHP_OS);
  54. //echo $mac->mac_addr;
  55. ?>

复制代


ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート