获取IP(用于接口限制ip访问)

2017-10-30  本文已影响0人  青青玉立

1. 获取ip地址

2. 与允许的ip范围 进行比较 

代码如下:

$ip = getIP();

function getIP()

{

   $onlineip = '';

   if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown'))

   {

       $onlineip = getenv('HTTP_CLIENT_IP');

   } else if (getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown'))    {

       $onlineip = getenv('HTTP_X_FORWARDED_FOR');

   } else if (getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), 'unknown')) {

      $onlineip = getenv('REMOTE_ADDR');

   } else if (isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')) {

      $onlineip = $_SERVER['REMOTE_ADDR'];

   }

   preg_match("/[\d\.]{7,15}/", $onlineip, $onlineipmatches);

   $onlineip = empty($onlineipmatches[0]) ? 'unknown' : $onlineipmatches[0];

   return $onlineip;

}

上一篇 下一篇

猜你喜欢

热点阅读