Exemple #1
0
 /**
  * 获取真实HTTP客户端IP,按次序尝试
  *
  * @return string
  */
 public static function getClientIP()
 {
     if (strlen(self::$client_ip) >= 7) {
         return self::$client_ip;
     }
     $keys = array('HTTP_CLIENT_IP', 'HTTP_X_REAL_IP', 'HTTP_X_FORWARDED_FOR', 'HTTP_X_FORWARDED', 'HTTP_X_CLUSTER_CLIENT_IP', 'HTTP_FORWARDED_FOR', 'HTTP_FORWARDED', 'REMOTE_ADDR');
     $server = self::getInstance('SERVER');
     foreach ($keys as $key) {
         $ipaddr = $server->get($key);
         if ($ipaddr && strlen($ipaddr) >= 7) {
             self::$client_ip = $ipaddr;
             break;
         }
     }
     return self::$client_ip;
 }
Exemple #2
0
 static function getClientIP()
 {
     if (strlen(self::$client_ip) >= 7) {
         return self::$client_ip;
     }
     $UC = array('HTTP_CLIENT_IP', 'HTTP_X_REAL_IP', 'HTTP_X_FORWARDED_FOR', 'HTTP_X_FORWARDED', 'HTTP_X_CLUSTER_CLIENT_IP', 'HTTP_FORWARDED_FOR', 'HTTP_FORWARDED', 'REMOTE_ADDR');
     $SF = self::getInstance('SERVER');
     foreach ($UC as $C) {
         $SC = $SF->get($C);
         if ($SC && strlen($SC) >= 7) {
             self::$client_ip = $SC;
             break;
         }
     }
     return self::$client_ip;
 }