获取IP地址方法
function
getip() {
static
$ip
=
''
;
$ip
=
$_SERVER
[
'REMOTE_ADDR'
];
if
(isset(
$_SERVER
[
'HTTP_CDN_SRC_IP'
])) {
$ip
=
$_SERVER
[
'HTTP_CDN_SRC_IP'
];
}
elseif
(isset(
$_SERVER
[
'HTTP_CLIENT_IP'
]) && preg_match(
'/^([0-9]{1,3}\.){3}[0-9]{1,3}$/'
,
$_SERVER
[
'HTTP_CLIENT_IP'
])) {
$ip
=
$_SERVER
[
'HTTP_CLIENT_IP'
];
}
elseif
(isset(
$_SERVER
[
'HTTP_X_FORWARDED_FOR'
]) AND preg_match_all(
'#\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}#s'
,
$_SERVER
[
'HTTP_X_FORWARDED_FOR'
],
$matches
)) {
foreach
(
$matches
[0] AS
$xip
) {
if
(!preg_match(
'#^(10|172\.16|192\.168)\.#'
,
$xip
)) {
$ip
=
$xip
;
break
;
}
}
}
return
$ip
;
}
获取IP地址方法的更多相关文章
- js获取IP地址方法总结_转
js代码获取IP地址的方法,如何在js中取得客户端的IP地址.原文地址:js获取IP地址的三种方法 http://www.jbxue.com/article/11338.html 1,js取得IP地址 ...
- js获取IP地址方法总结
js代码获取IP地址的方法,如何在js中取得客户端的IP地址.原文地址:js获取IP地址的三种方法 http://www.jbxue.com/article/11338.html 1,js取得IP地址 ...
- 使用C#获取IP地址方法
C#中如何获取IP地址?,看到问题的时候我也很纠结,纠结的不是这个问题是如何的难回答,而是纠结的是这些问题都是比较基本的常识,也是大家会经常用到的.但是却不断的有人问起,追根究底的原因估计就是没有好好 ...
- 生产中常用的获取IP地址方法的总结
从ifconfig命令的结果中筛选出除了lo网卡之外的所有IPv4地址 centos7 (1)ifconfig | awk '/inet / && !($2 ~ /^127/){pri ...
- php 获取ip地址方法
function getIP() { $ip=""; if(!empty($_SERVER['HTTP_CLIENT_IP'])){ $myip = $_SERVER['HTTP_ ...
- js获取IP地址多种方法实例教程
js获取IP地址方法总结 js代码获取IP地址的方法,如何在js中取得客户端的IP地址.原文地址:js获取IP地址的三种方法 http://www.jbxue.com/article/11338. ...
- windows下获取IP地址的两种方法
windows下获取IP地址的两种方法: 一种可以获取IPv4和IPv6,但是需要WSAStartup: 一种只能取到IPv4,但是不需要WSAStartup: 如下: 方法一:(可以获取IPv4和I ...
- Windows下获取本机IP地址方法介绍
Windows下获取本机IP地址方法介绍 if((hostinfo = gethostbyname(name)) != NULL) { #if 1 ; printf("IP COUNT: % ...
- Java获取ip地址的几种方法
以下内容介绍下java获取ip地址的几种思路. 1.直接利用java.net.InetAddress类获取,不过这种方法只在windows环境下有效,在linux环境下只能获取localhost地址( ...
随机推荐
- CIF 搜索逻辑
test code #include <cstddef> class CIF { }; template <typename OBJ> class CList { public ...
- WebService . Schema约束
1. namespace 相当于schema文件的id 2. targetNamespace属性 用来指定schema文件的namespace的值 3. xmlns属性 引入一个约束, 它的值是一个s ...
- profile default1
DEVPISAP01:/sapmnt/ISD/profile # more ISD_J20_SHADEVEAIAP01 SAPSYSTEMNAME = ISD SAPSYSTEM = 20 INSTA ...
- mysql实现IP与整形互转
- jquery中ajax使用error调试错误的方法
JQuery使我们在开发Ajax应用程序的时候提高了效率,减少了许多兼容性问题,我们在Ajax项目中,遇到ajax异步获取数据出错怎么办,我们可以通过捕捉error事件来获取出错的信息. jquery ...
- leetcode155
public class MinStack { Stack<int> S = new Stack<int>(); /** initialize your data struct ...
- leetcode617
这道题想了很久,并没有掌握思想,写了很多,也没有解决.先贴出思考的过程. class Solution { public: vector<TreeNode> v1; vector<T ...
- 第二篇*1、Python基本数据类型
数据类型: 变量可以处理不同类型的值,基本的类型是数和字符串.使用变量时只需要给它们赋一个值.不需要声明或定义数据类型.Python3 中有六个标准的数据类型:Number(数字),String(字符 ...
- BASEDIR
1)正常写python程序会有一个可执行的bin.py文件,假如这个文件需要导入my_module里面定义的模块,应该怎么设置sys.path(此时可以直接导入), 因为bin和model属于同级目录 ...
- elasticsearch template
# curl -XPUT localhost:9200/_template/template_1 -d '{"template" : "te*","s ...