首页 编程设计PHP正文

PHP获取机器mac代码

云水 PHP 2020-07-31 08:21:57 1583 0 PHPMAC

收藏了,以后会有用的。但是只能获取windows和linux系统的mac。

<?php
 
class GetMac
{
    public $result = array();
    public $macAddrs = array(); //所有mac地址
    public $macAddr;            //第一个mac地址
 
    function __construct($OS)
    {
        $this->GetMac($OS);
    }
 
    function GetMac($OS)
    {
        switch (strtolower($OS)) {
            case "unix":
                break;
            case "solaris":
                break;
            case "aix":
                break;
            case "linux":
                $this->getLinux();
                break;
            default:
                $this->getWindows();
                break;
        }
        $tem = array();
        foreach ($this->result as $val) {
            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", $val, $tem)) {
                $this->macAddr = $tem[0];//多个网卡时,会返回第一个网卡的mac地址,一般够用。
                break;
                //$this->macAddrs[] = $temp_array[0];//返回所有的mac地址
            }
        }
        unset($temp_array);
        return $this->macAddr;
    }
 
    //Linux系统
    function getLinux()
    {
        @exec("ifconfig -a", $this->result);
        return $this->result;
    }
 
    //Windows系统
    function getWindows()
    {
        @exec("ipconfig /all", $this->result);
        if ($this->result) {
            return $this->result;
        } else {
            $ipconfig = $_SERVER["WINDIR"] . "system32ipconfig.exe";
            if (is_file($ipconfig)) {
                @exec($ipconfig . " /all", $this->result);
            } else {
                @exec($_SERVER["WINDIR"] . "systemipconfig.exe /all", $this->result);
                return $this->result;
            }
        }
    }
}
 
$obj = new GetMac(PHP_OS);
print_r($obj->result);
echo $obj->macAddr;
//获取客户端
//$result=`arp -a $REMOTE_ADDR`;
//$result=`nbtstat -a $REMOTE_ADDR`;
//print_r($result);
exit;<br> 


版权声明

1.本站大部分下载资源收集于网络,不保证其完整性以及安全性,请下载后自行测试。
2.本站资源仅供学习和交流使用,版权归资源原作者所有,请在下载后24小时之内自觉删除。
3.若作商业用途,请购买正版,由于未及时购买和付费发生的侵权行为,与本站无关。
4.若内容涉及侵权或违法信息,请联系本站管理员进行下架处理,邮箱ganice520@163.com(本站不支持其他投诉反馈渠道,谢谢合作)

本文链接:http://apod.cc/index.php/post/444.html

发表评论

评论列表(0人评论 , 1583人围观)
☹还没有评论,来说两句吧...