跳转到主内容
极星编程网:以代码为星,赴技术山海!

php 获取客户端mac地址程序代码_PHP教程

mac 地址是网卡地址一般情况下是无法获取到用户的mac地址地的,因为安全限制了浏览器所以几乎不太可能获取到了,下面拿两段代码给大家玩玩。 例1 PHP代码: PHP 8.5.5 PHP 8.5.5 是 PHP 8.5 分支的维护更新版本。该版本延续了“小步快跑”的迭代逻辑,通过深度错误修复、底层性能微调以及安全加固,旨在为开发者提供一个更健壮、更高效的运行环境。该版本严格遵守语义化版本规范,不包含破坏性变更。 下载 代码如下复制代码@exec("arp -a",$array); //执行arp -a命令,结果放到数组$array中echo "
";
  print_r($array); //打印获取的数组
 
  foreach($array as $value)
  {
      if( //匹配结果放到数组$mac_array
      strpos($value,$_SERVER["REMOTE_ADDR"]) &&
      preg_match("/(:?[0-9a-f]{2}[:-]){5}[0-9a-f]{2}/i",$value,$mac_array)
      )
      {
          $mac = $mac_array[0];
          break;
      }
  }
  echo $mac; //输出客户端MAC
?>
例2 代码如下复制代码class MacAddr{public $returnArray = array();public $macAddr;function __contruct($os_type=null){if(is_null($os_type)) $os_type = PHP_OS;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->returnArray 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->macAddr = $temp_array[0];break;}}unset($temp_array);return $this->macAddr;}function forWindows(){@exec("ipconfig /all", $this->returnArray);if($this->returnArray)return $this->returnArray;else{$ipconfig = $_SERVER["WINDIR"]."system32ipconfig.exe";if (is_file($ipconfig))@exec($ipconfig." /all", $this->returnArray);else@exec($_SERVER["WINDIR"]."systemipconfig.exe /all", $this->returnArray);return $this->returnArray;}}function forLinux(){@exec("ifconfig -a", $this->returnArray);return $this->returnArray;}}$mac = new MacAddr(PHP_OS);echo $mac->macAddr;echo "";// 获取客户端// linux$command = "arp -a {$_SERVER['REMOTE_ADDR']}";echo $command;echo "";$result=`{$command}`;// windows$command = "nbtstat -a {$_SERVER['REMOTE_ADDR']}";echo $command;echo "";$result=`{$command}`;print_r($result);?> 获取服务端的逻辑没什么大问题,可能会存在权限问题。 获取客户端的时候,可能会比较慢,arp/nbstat命令执行会比较慢。 代码如下复制代码 只适用于IE浏览器,而且会有告警提示 http://www.bkjia.com/PHPjc/632908.html www.bkjia.com true http://www.bkjia.com/PHPjc/632908.html TechArticle mac地址是网卡地址一般情况下是无法获取到用户的mac地址地的,因为安全限制了浏览器所以几乎不太可能获取到了,下面拿两段代码给大家...

相关文章