php专区

 首页 > php专区 > PHP应用 > 常用功能 > 10、PHP获取客户端真实IP

10、PHP获取客户端真实IP

分享到:
【字体:
导读:
          我们经常要用数据库记录用户的IP,以下代码可以获取客户端真实的IP: 1 // 获取用户真实IP 2 3 function getIp() { 4 5 if ( getenv (HTTP_CLIENT_IP) strcasecmp ( getenv (HTTP_CLIENT_IP), 6 unknown )) 7 8 $ip = ge...

我们经常要用数据库记录用户的IP,以下代码可以获取客户端真实的IP:

复制代码
 1 //获取用户真实IP 
 2 
 3 function getIp() { 
 4 
 5     if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"),
 6  "unknown")) 
 7 
 8         $ip = getenv("HTTP_CLIENT_IP"); 
 9 
10     else 
11 
12         if (getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown")) 
13 
14             $ip = getenv("HTTP_X_FORWARDED_FOR"); 
15 
16         else 
17 
18             if (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown")) 
19 
20                 $ip = getenv("REMOTE_ADDR"); 
21 
22             else 
23 
24                 if (isset ($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && 
25 strcasecmp($_SERVER['REMOTE_ADDR'], "unknown")) 
26 
27                     $ip = $_SERVER['REMOTE_ADDR']; 
28 
29                 else 
30 
31                     $ip = "unknown"; 
32 
33     return ($ip); 
34 
35 }
36 
37 //使用方法如下
38 
39 echo getIp();
复制代码

分享到:
9、PHP截取字符串长度
我们经常会遇到需要截取字符串(含中文汉字)长度的情况,比如标题显示不能超过多少字符,超出的长度用…表示,以下函数可以满足你的需求。 1 /* 2 3 Utf-8、gb2312都支持的汉字截取函数 4 5 cut_str(字符串, 截取长度, 开始长度, 编码); 6 7 编码默认为 utf-8 8 9 开始长度默认...
11、PHP防止SQL注入
我们在查询数据库时,出于安全考虑,需要过滤一些非法字符防止SQL恶意注入,请看一下函数: 1 function injCheck($sql_str) { 2 3 $check = preg_match('/select|insert|update|delete|\'|\/\*|\*|\.\.\/|\.\/|union|into 4 |load_file|outfile/', $sql_str); 5 6 if...
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……