【www.gdgbn.com--php函数】

 //经过复杂的判断与算是的获取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"]; 
  

本文来源:http://www.gdgbn.com/jiaocheng/24671/