在PHP 中,取得已連接客戶端的MAC和IP 位址由於此功能的可用性不同,連接的用戶端需要不同的方法資訊。
伺服器的 IP 位址可透過 $_SERVER['SERVER_ADDR' 輕鬆取得]。至於 MAC 位址,可以透過解析 netstat -ie (Linux) 或 ipconfig /all (Windows) 等指令的輸出來檢索。
客戶端的IP位址可以從$_SERVER['REMOTE_ADDR'].
在PHP中確定客戶端的MAC 位址具有挑戰性,因為除非客戶端位於同一乙太網路上,否則伺服器通常無法存取它
如果客戶端位於同一LAN 上,則解析arp -n (Linux)或arp -a (Windows) 的輸出可以提供MAC 位址。以下是PHP 中使用反引號的範例:
<br>$ipAddress=$_SERVER['REMOTE_ADDR'];<br>$macAddr=false;<h1>執行外部指令,將輸出分成幾行</h1><p>$arp=arp -a $ipAddress;<br>$lines=explode("n", $arp);</p><h1>找出描述我們的IP 位址的輸出行</h1><p>foreach($lines as $line) <br>{<br> $cols=preg_split('/s /', trim($line));<br> if ($cols[0]==$ipAddress)<br> {</p><pre class="brush:php;toolbar:false"> $macAddr=$cols[1];
}
}
但是,如果客戶端不在同一個LAN 上,如果沒有其他資訊傳輸方式,則無法透過PHP 檢索MAC 位址客戶。
以上是如何使用 PHP 檢索已連接客戶端的 MAC 和 IP 位址?的詳細內容。更多資訊請關注PHP中文網其他相關文章!