关于PHP获取客户端IP

PHP获取客户端IP,
使用的是$_SERVER[”REMOTE_ADDR’]

put_file_contents("./1.txt", var_export($_SERVER));     //

//获取用户IP地址(客户端IP)
    public function getIp()
    {
 
        if(!empty($_SERVER["HTTP_CLIENT_IP"]))
        {
            $cip = $_SERVER["HTTP_CLIENT_IP"];
        }
        else if(!empty($_SERVER["HTTP_X_FORWARDED_FOR"]))
        {
            $cip = $_SERVER["HTTP_X_FORWARDED_FOR"];
        }
        else if(!empty($_SERVER["REMOTE_ADDR"]))
        {
            $cip = $_SERVER["REMOTE_ADDR"];
        }
        else
        {
            $cip = '';
        }
        preg_match("/[\d\.]{7,15}/", $cip, $cips);
        $cip = isset($cips[0]) ? $cips[0] : 'unknown';
        unset($cips);
 
        return $cip;
    }
$this->getIp();    //调用 
/*
php $_SERVER["REMOTE_ADDR"]输出ip为::1
原因:
::1说明你的电脑开启了ipv6支持,这是ipv6下的本地回环地址的表示。
因为你访问的时候用的是localhost访问的,是正常情况。
使用ip地址访问或者关闭ipv6支持都可以不显示这个。
部署之后会显示正常。
*/

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容