獲取用戶端ip地址
来源:互联网 发布:python sleep 编辑:程序博客网 时间:2024/05/16 03:43
/**
* 獲取用戶端ip地址
*/
static public function getCurrentClientIp()
{
$_ip = false;
if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
$_ip = $_SERVER['HTTP_CLIENT_IP'];
} else if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$_ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
}
$_ip_arr = explode(',', $_ip);
if (!empty($_ip_arr)) {
for($i = 0; $i < count($_ip_arr); $i++) {
$_limitip = explode(".", $_ip_arr[$i]);
if (count($_limitip) != 4) {
$_ip_arr[$i] = false;
} else {
foreach ($_limitip as $key) {
if (! is_numeric($key) && !preg_match("/^(d+)/",$key)) {
$_ip_arr[$i] = false;
break;
}
}
}
if (!eregi("^(10|172\.16|192\.168|127\.0)\.", $_ip_arr[$i]) && $_ip_arr[$i]) {
$_ip = $_ip_arr[$i];
break;
}
}
}
$_ip = ! empty($_ip) ? $_ip : $_SERVER['REMOTE_ADDR'];
// preg_match("/[\d\.]{7,15}/",$ip,$_match_arr);
$_pattern = '/(?:(?:25[0-5]|2[0-4][0-9]|(?:(?:1[0-9])?|[1-9]?)[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|(?:(?:1[0-9])?|[1-9]?)[0-9])/';
preg_match($_pattern, $_ip, $_match_arr);
return $_match_arr[0] ? $_match_arr[0] : 'unknow';
}
* 獲取用戶端ip地址
*/
static public function getCurrentClientIp()
{
$_ip = false;
if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
$_ip = $_SERVER['HTTP_CLIENT_IP'];
} else if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$_ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
}
$_ip_arr = explode(',', $_ip);
if (!empty($_ip_arr)) {
for($i = 0; $i < count($_ip_arr); $i++) {
$_limitip = explode(".", $_ip_arr[$i]);
if (count($_limitip) != 4) {
$_ip_arr[$i] = false;
} else {
foreach ($_limitip as $key) {
if (! is_numeric($key) && !preg_match("/^(d+)/",$key)) {
$_ip_arr[$i] = false;
break;
}
}
}
if (!eregi("^(10|172\.16|192\.168|127\.0)\.", $_ip_arr[$i]) && $_ip_arr[$i]) {
$_ip = $_ip_arr[$i];
break;
}
}
}
$_ip = ! empty($_ip) ? $_ip : $_SERVER['REMOTE_ADDR'];
// preg_match("/[\d\.]{7,15}/",$ip,$_match_arr);
$_pattern = '/(?:(?:25[0-5]|2[0-4][0-9]|(?:(?:1[0-9])?|[1-9]?)[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|(?:(?:1[0-9])?|[1-9]?)[0-9])/';
preg_match($_pattern, $_ip, $_match_arr);
return $_match_arr[0] ? $_match_arr[0] : 'unknow';
}
0 0
- 獲取用戶端ip地址
- 獲取用戶語言配置信息
- IP地址
- IP地址
- IP地址
- IP地址
- ip地址
- ip 地址
- IP地址
- IP地址
- IP地址
- IP地址
- IP地址
- IP地址
- IP地址
- IP地址
- ip地址
- IP地址
- Linux下使用nohup让一个程序在退出登陆后继续运行
- 程序员技术练级攻略
- IOS通讯录内容调用
- Socket通信原理和实践
- 第22条:优先考虑静态成员类
- 獲取用戶端ip地址
- 二分法查找法
- Android 中H.264/AVC codec的开发
- 原生php 实现路由功能
- 英文版XP 不显示中文的情况
- 不用输入帐号密码登录MySQL的方法
- UITableView选中cell
- Windows Embedded CE 6.0 Internals (4) The Mechanism of API
- 排序算法汇总总结