<?php
// 获取客户端IP地址的函数
function get_client_ip() {
// 检查是否有通过代理服务器传递的IP地址
if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
// 如果存在,返回第一个IP地址(可能是多个IP地址中的一个)
return explode(',', $_SERVER['HTTP_X_FORWARDED_FOR'])[0];
} elseif (isset($_SERVER['HTTP_CLIENT_IP'])) {
// 检查是否有通过客户端传递的IP地址
return $_SERVER['HTTP_CLIENT_IP'];
} else {
// 直接返回服务器获取到的远程地址
return $_SERVER['REMOTE_ADDR'];
}
}
// 调用函数并输出IP地址
echo get_client_ip();
?>
$_SERVER['HTTP_X_FORWARDED_FOR']
:这个变量通常由代理服务器设置,包含了客户端的真实IP地址。如果客户端通过多个代理访问,可能会有多个IP地址,以逗号分隔。$_SERVER['HTTP_CLIENT_IP']
:这个变量通常由客户端设置,包含客户端的真实IP地址。$_SERVER['REMOTE_ADDR']
:这个变量直接从服务器获取远程地址,通常是客户端的IP地址,但如果客户端通过代理访问,这个值可能不是真实的客户端IP。通过上述代码,可以较为准确地获取客户端的IP地址。
上一篇:php querylist
下一篇:php imagepng
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站