在 PHP 中获取公网 IP 可以通过以下函数实现:
function get_ip_address() {
if (!empty($_SERVER["HTTP_CLIENT_IP"])) {
$ip = $_SERVER["HTTP_CLIENT_IP"];
} elseif (!empty($_SERVER["HTTP_X_FORWARDED_FOR"])) {
$ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
} else {
$ip = $_SERVER["REMOTE_ADDR"];
}
return $ip;
}
这个函数首先尝试从 HTTP_CLIENT_IP
中获取 IP 地址,如果不存在,则尝试从 HTTP_X_FORWARDED_FOR
中获取 IP 地址,最后从 REMOTE_ADDR
中获取 IP 地址。