php教程

PHP获取用户真实IP方法

我的站长站 2020-09-27 人阅读

我的站长站分享自用两种获取用户IP方法,复制就可以使用,方便新手小白。

php获取IP地址

if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')) {
$onlineip= getenv('HTTP_CLIENT_IP');
} elseif(getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')) {
$onlineip= getenv('HTTP_X_FORWARDED_FOR');
} elseif(getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), 'unknown')) {
$onlineip= getenv('REMOTE_ADDR');
} elseif(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')) {
$onlineip= $_SERVER['REMOTE_ADDR'];
}

这种方法是网络上非常常见的获取IP方法,但是每个页面都要写一次,下面分享一个PHP获取用户IP的函数,可以重复调用。

PHP获取IP函数方法

function  GetIP(){  
if(getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"),"unknown")){
$ip = getenv("HTTP_CLIENT_IP");
}else if (getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"),"unknown")){
$ip = getenv("HTTP_X_FORWARDED_FOR");
}else if (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"),"unknown")){
$ip = getenv("REMOTE_ADDR");
}else if (isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'],"unknown")){
$ip = $_SERVER['REMOTE_ADDR'];
}else{
$ip  =  "unknown" ;  
}
return $ip;  
}  
$ipe  = GetIP();  
echo   $ipe ;

function内的代码可以放在一个公共PHP文件内,在需要的地址用GetIP()方法就可以直接调用了,可以重复多次调用。

相关推荐
  • php获取
  • php获取文件后缀扩展名三种方法分享

    本文中,我们介绍三种php获取文件扩展名的方法方法一:使用PHP pathinfo()获取文件扩展名方法二:使用PHP SplFileInfo类获取文件后缀方法三:使用PHP substr()和strrchr()函数获取文件扩展名pathinfo()获取方法pathinfo() 函数以数组的形式返回关于文件路径...

    php教程 69 1年前
  • filesize()函数获取文件大小的方法

    filesize()函数使用方法filesize()函数可以直接获取文件的字节数,代码如下:echo filesize(“upload.php”);通过浏览器访问,我们可以看到,直接输出获取的文件大小的字节。常用方法封装我们都知道文件大小,除了用字节数表示更常见的是用KB、MB、GB、TB这些...

    php教程 49 1年前
  • php获取年月周时间戳代码

    php获取时区date_default_timezone_set("Asia/Shanghai"); date_default_timezone_set('PRC');//这两种方法效果相同时间戳转日期,可以用date(‘Y-m-s h:i:s’, 具体时间戳来实现)日期转换时间戳,用strtotime("date()").php获取时间戳//获取今...

    php教程 18 1年前
最新更新