如何在Codeigniter上获取用户的IP地址[重复]

问题描述 投票:-1回答:1

此问题已经在这里有了答案:

我有一些问题,我需要知道如何在我的网站上获取用户的IP地址,并且我正在使用此代码:

$ip = $this->input->ip_address() ;
echo $ip;

将返回我的主机IP,感谢您的帮助

php codeigniter codeigniter-3
1个回答
0
投票
Use this function instead of it.

  function get_ip_address_of_user() {
   $ipaddress = array();
   if (isset($_SERVER['HTTP_CLIENT_IP']))
    $ipaddress['ip'] = $_SERVER['HTTP_CLIENT_IP'];
   else if (isset($_SERVER['HTTP_X_FORWARDED_FOR']))
    $ipaddress['ip'] = $_SERVER['HTTP_X_FORWARDED_FOR'];
   else if (isset($_SERVER['HTTP_X_FORWARDED']))
    $ipaddress['ip'] = $_SERVER['HTTP_X_FORWARDED'];
    else if (isset($_SERVER['HTTP_FORWARDED_FOR']))
    $ipaddress['ip'] = $_SERVER['HTTP_FORWARDED_FOR'];
   else if (isset($_SERVER['HTTP_FORWARDED']))
    $ipaddress['ip'] = $_SERVER['HTTP_FORWARDED'];
    else if (isset($_SERVER['REMOTE_ADDR']))
    $ipaddress['ip'] = $_SERVER['REMOTE_ADDR'];
   return $ipaddress;
  }
© www.soinside.com 2019 - 2024. All rights reserved.