千家信息网

php如何实现ip收集

发表于:2024-12-03 作者:千家信息网编辑
千家信息网最后更新 2024年12月03日,这篇文章给大家分享的是有关php如何实现ip收集的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。php实现获取ip的方法:1、使用"$_SERVER["REMOTE_ADDR
千家信息网最后更新 2024年12月03日php如何实现ip收集

这篇文章给大家分享的是有关php如何实现ip收集的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

php实现获取ip的方法:1、使用"$_SERVER["REMOTE_ADDR"]"获取;2、使用"($user_IP) ? $user_IP : $_SERVER["REMOTE_ADDR"]"获取;3、使用getRealIp方法获取等。

本文操作环境:Windows7系统,PHP7.1版,Dell G3电脑。

php获取访问者IP地址汇总

在很我的时候我们需要得到用户的真实IP地址,例如,日志记录,地理定位,将用户信息,网站数据分析等,其实获取IP地址很简单$_SERVER[\'REMOTE_ADDR\']就可以了。

下面我们就来给大家汇总一下常用的几种获取IP地址的方法。

//方法1:

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

//方法2:

代码如下:

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

//方法3:

function getRealIp(){  $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 getRealIp();

//方法4:

if ($HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"]){  $ip = $HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"];}elseif ($HTTP_SERVER_VARS["HTTP_CLIENT_IP"]){  $ip = $HTTP_SERVER_VARS["HTTP_CLIENT_IP"];}elseif ($HTTP_SERVER_VARS["REMOTE_ADDR"]){  $ip = $HTTP_SERVER_VARS["REMOTE_ADDR"];}elseif (getenv("HTTP_X_FORWARDED_FOR")){  $ip = getenv("HTTP_X_FORWARDED_FOR");}elseif (getenv("HTTP_CLIENT_IP")){  $ip = getenv("HTTP_CLIENT_IP");}elseif (getenv("REMOTE_ADDR")){  $ip = getenv("REMOTE_ADDR");}else{  $ip = "Unknown";}echo $ip ;

//方法5:

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;

//方法6:

print "您的IP地址是:";  if(!empty($_SERVER["HTTP_CLIENT_IP"])){ $cip = $_SERVER["HTTP_CLIENT_IP"];}elseif(!empty($_SERVER["HTTP_X_FORWARDED_FOR"])){ $cip = $_SERVER["HTTP_X_FORWARDED_FOR"];}elseif(!empty($_SERVER["REMOTE_ADDR"])){ $cip = $_SERVER["REMOTE_ADDR"];}else{ $cip = "无法获取!";}print $cip;


感谢各位的阅读!关于"php如何实现ip收集"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

0