如何在PHP 中準確地確定用戶的IP 位址
找到使用者的IP 位址PHP 中準確的IP 位址對於依賴基於IP的地理定位、詐欺的應用程式至關重要檢測或存取控制。但是,由於使用代理、負載平衡器和其他網路配置,提取正確的 IP 位址可能具有挑戰性。
IP 位址檢索的最佳實踐
雖然沒有一種方法是萬無一失的,對於最準確的方法存在普遍共識PHP:
使用$_SERVER 變數
PHP 提供了幾個可能包含IP位址的 $_SERVER 變數資訊:
有關REMOTE_ADDR 的資格
function get_ip_address() { if (!empty($_SERVER['HTTP_CLIENT_IP']) && filter_var($_SERVER['HTTP_CLIENT_IP'], FILTER_VALIDATE_IP)) { return $_SERVER['HTTP_CLIENT_IP']; } if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) { $iplist = explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']); foreach ($iplist as $ip) { if (filter_var(trim($ip), FILTER_VALIDATE_IP)) { return $ip; } } } return $_SERVER['REMOTE_ADDR']; }
其他注意事項
驗證IP 範圍: 使用帶有附加條件地址。
以上是如何在PHP中取得使用者的準確IP位址?的詳細內容。更多資訊請關注PHP中文網其他相關文章!