>백엔드 개발 >PHP 문제 >PHP에서 Mac 주소를 얻는 방법

PHP에서 Mac 주소를 얻는 방법

(*-*)浩
(*-*)浩원래의
2019-09-28 14:14:496214검색

클라이언트의 MAC 주소를 얻는 것은 클라이언트의 불변의 고유 식별자이기 때문에 매우 유용한 기능입니다. IP를 변경하거나 로컬 기록을 삭제하는 것은 쓸모가 없습니다.

따라서 Mac 주소를 얻으려면 소프트웨어 구매 시 단일 기계 활성화 코드를 사용해야 하는 경우가 많습니다. 각 기계는 웹사이트 등록 등을 위해 한 번만 등록할 수 있습니다.

PHP에서 Mac 주소를 얻는 방법

전자상거래 시스템 개발에서 일반적인 기능은 사용자가 로그인하지 않고 장바구니에 제품을 추가하고 로그인 후 장바구니 데이터가 자동으로 동기화되는 것입니다.

우리는 일반적으로 이 문제를 해결하기 위해 COOKIE 또는 SESSION을 사용합니다. 실제로 클라이언트의 MAC 주소를 고유 식별자로 가져와 데이터베이스에 저장한 다음 성공적인 로그인 후 일치시킬 수도 있습니다. (권장 학습: PHP 비디오 튜토리얼)

MAC 주소는 네트워크에서 네트워크 카드를 고유하게 식별하는 데 사용됩니다. 장치에 하나 이상의 네트워크 카드가 있는 경우 각 네트워크 카드에는 고유한 MAC 주소가 필요합니다. .

빅데이터 시대의 클라우드는 이런 방식을 자주 사용합니다.

온라인에서 컴파일된 코드는 다음과 같습니다.

<?php 
    /** 
    获取网卡的MAC地址原码;目前支持WIN/LINUX系统 
    获取机器网卡的物理(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"]."\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 GetMacAddr(PHP_OS); 
echo $mac->mac_addr; 
?>

위 내용은 PHP에서 Mac 주소를 얻는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.