📅  最后修改于: 2023-12-03 15:38:19.377000             🧑  作者: Mango
在 Laravel 中获取客户端 IP 地址和 MAC 地址可以使用 Illuminate\Http\Request
类提供的方法。下面是获取客户端 IP 地址和 MAC 地址的代码示例:
use Illuminate\Http\Request;
// 获取客户端 IP 地址
$ipAddress = Request::ip();
// 获取客户端 MAC 地址
$macAddress = exec('getmac'); // Windows 系统下获取 MAC 地址的命令
// 或者
$macAddress = shell_exec("arp -a ".$_SERVER['REMOTE_ADDR']); // Linux/MacOS 系统下获取 MAC 地址的命令
上述代码使用 Illuminate\Http\Request
类提供的 ip()
方法来获取客户端 IP 地址,同时也演示了如何使用 PHP 自带的 exec()
或 shell_exec()
函数来获取客户端的 MAC 地址。
需要注意的是,使用 exec()
或 shell_exec()
函数获取客户端 MAC 地址可能并不是可靠的,在一些情况下会出现获取到空值的情况。
因此,我们建议在实际应用程序中只使用 Illuminate\Http\Request
类提供的 ip()
方法来获取客户端 IP 地址,如果确实需要获取 MAC 地址,则最好在客户端上传 MAC 地址或者使用其他方法来获取。