永发信息网

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];
 }
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯