php怎么获取 HTTP_X_FORWARDED_FOR 第一个ip?
答案:1 悬赏:40 手机版
解决时间 2021-03-28 13:27
- 提问者网友:我的未来我做主
- 2021-03-28 03:16
php怎么获取 HTTP_X_FORWARDED_FOR 第一个ip?
最佳答案
- 五星知识达人网友:往事埋风中
- 2021-03-28 04:07
用 explode()函数分隔成数组,取数组中的第一个。以下代码是我用来获取IP的函数,分享给你。
以下函数的原理是这样的:
1、判断服务器环境变量 HTTP_X_FORWARDED_FOR 是否有,如果没有则看HTTP_CLIENT_IP 否则 REMOTE_ADDR 这三个环境变量都是用来获取客户访问IP的。
function getIp(){
$ip = '';
if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])){
$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
}elseif(isset($_SERVER['HTTP_CLIENT_IP'])){
$ip = $_SERVER['HTTP_CLIENT_IP'];
}else{
$ip = $_SERVER['REMOTE_ADDR'];
}
$ip_arr = explode(',', $ip);
return $ip_arr[0];
}
以下函数的原理是这样的:
1、判断服务器环境变量 HTTP_X_FORWARDED_FOR 是否有,如果没有则看HTTP_CLIENT_IP 否则 REMOTE_ADDR 这三个环境变量都是用来获取客户访问IP的。
function getIp(){
$ip = '';
if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])){
$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
}elseif(isset($_SERVER['HTTP_CLIENT_IP'])){
$ip = $_SERVER['HTTP_CLIENT_IP'];
}else{
$ip = $_SERVER['REMOTE_ADDR'];
}
$ip_arr = explode(',', $ip);
return $ip_arr[0];
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯