PHP 获取客户端真实IP地址多种方法小结

 更新时间:2010年05月15日 11:53:03   作者:  
PHP 获取客户端真实IP地址多种方法小结,需要的朋友可以参考下。
经过复杂的判断与算是的获取IP地址函数
复制代码 代码如下:

function getIP() {
if (getenv('HTTP_CLIENT_IP')) {
$ip = getenv('HTTP_CLIENT_IP');
}
elseif (getenv('HTTP_X_FORWARDED_FOR')) {
$ip = getenv('HTTP_X_FORWARDED_FOR');
}
elseif (getenv('HTTP_X_FORWARDED')) {
$ip = getenv('HTTP_X_FORWARDED');
}
elseif (getenv('HTTP_FORWARDED_FOR')) {
$ip = getenv('HTTP_FORWARDED_FOR');

}
elseif (getenv('HTTP_FORWARDED')) {
$ip = getenv('HTTP_FORWARDED');
}
else {
$ip = $_SERVER['REMOTE_ADDR'];
}
return $ip;
}

最简单获取ip地址代码一句实例
复制代码 代码如下:

$reIP=$_SERVER["REMOTE_ADDR"];
echo $reIP;

php获取ip的算法
复制代码 代码如下:

if(getenv('HTTP_CLIENT_IP')) {
$onlineip = getenv('HTTP_CLIENT_IP');
} elseif(getenv('HTTP_X_FORWARDED_FOR')) {
$onlineip = getenv('HTTP_X_FORWARDED_FOR');
} elseif(getenv('REMOTE_ADDR')) {
$onlineip = getenv('REMOTE_ADDR');
} else {
$onlineip = $HTTP_SERVER_VARS['REMOTE_ADDR'];
}
echo $onlineip;

可以分出内网与外网站ip地址获取程序
复制代码 代码如下:

function getip_out(){
$ip=false;
if(!empty($_SERVER["HTTP_CLIENT_IP"])){
$ip = $_SERVER["HTTP_CLIENT_IP"];
}
if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ips教程 = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);
if ($ip) { array_unshift($ips, $ip); $ip = FALSE; }
for ($i = 0; $i < count($ips); $i++) {
if (!eregi ("^(10│172.16│192.168).", $ips[$i])) {
$ip = $ips[$i];
break;
}
}
}
return ($ip ? $ip : $_SERVER['REMOTE_ADDR']);
}
echo getip_out();

php获取ip的算法,用了?号表达式来处理
复制代码 代码如下:

$user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"];
$user_IP = ($user_IP) ? $user_IP : $_SERVER["REMOTE_ADDR"];

php下获取客户端ip地址的函数
php 获取客户端的真实ip

相关文章

  • 如何使用Laravel Eloquent来开发无限极分类

    如何使用Laravel Eloquent来开发无限极分类

    在网上商城上,我们经常可以看到多级分类、子分类、甚至无限极分类。本文将向你展示如何优雅的通过 Laravel Eloquent 将其实现。
    2021-05-05
  • php读取csv文件并输出的方法

    php读取csv文件并输出的方法

    这篇文章主要介绍了php读取csv文件并输出的方法,涉及php中fgetcsv函数的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • PHP微信发送推送消息乱码的解决方法

    PHP微信发送推送消息乱码的解决方法

    今天小编就为大家分享一篇关于PHP微信发送推送消息乱码的解决方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02
  • php文件上传你必须知道的几点

    php文件上传你必须知道的几点

    这篇文章主要介绍了php文件上传你必须知道的几点,只有真正的理解了这些知识点,打好基础,才能熟练掌握php文件上传功能的实现。
    2015-10-10
  • PHP后门隐藏的一些技巧总结

    PHP后门隐藏的一些技巧总结

    这篇文章主要介绍了关于PHP后门隐藏的一些技巧,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • php中出现空白页的原因及解决方法汇总

    php中出现空白页的原因及解决方法汇总

    这篇文章主要介绍了php中出现空白页的原因及解决方法汇总,对于PHP程序开发人员来说很有参考借鉴价值,需要的朋友可以参考下
    2014-07-07
  • php面象对象数据库操作类实例

    php面象对象数据库操作类实例

    这篇文章主要介绍了php面象对象数据库操作类,以实例形式讲述了通过面向对象封装数据库操作的技巧,非常具有实用价值,需要的朋友可以参考下
    2014-12-12
  • 微信公众平台开发教程②微信端分享功能图文详解

    微信公众平台开发教程②微信端分享功能图文详解

    这篇文章主要介绍了微信公众平台开发微信端分享功能,结合图文形式详细分析了微信分享功能的原理、操作步骤及相关实现技巧,需要的朋友可以参考下
    2019-04-04
  • php 批量添加多行文本框textarea一行一个

    php 批量添加多行文本框textarea一行一个

    这篇文章主要介绍了用php批量添加多行文本框textarea,一行一个,需要的朋友可以参考下
    2014-06-06
  • PHP中两个float(浮点数)比较实例分析

    PHP中两个float(浮点数)比较实例分析

    这篇文章主要介绍了PHP中两个float(浮点数)比较,以完整实例形式分析了bccomp函数用于浮点数比较的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-09-09

最新评论