php通过Chianz.com获取IP地址与地区的方法
本文实例讲述了php通过Chianz.com获取IP地址与地区的方法。分享给大家供大家参考。具体分析如下:
一个IP获取的结果不是很完善,究其原因是因为ip138的IP解析应对国外的地址时不是很详细,所以又重新写了个用Chianz.com的代码,实例代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
<title></title>
<meta charset="UTF-8" />
<meta name="author" content="" />
<meta name="keywords" content="" />
<meta name="description" content="" />
</head>
<body>
<?php
$ipAddr = "4.4.44.4";
$ipChinazAddr = "http://tool.chinaz.com/IP/?IP=".$ipAddr;
$contents = file_get_contents($ipChinazAddr);
$pattern = "/==>>.+</strong><br />/";
$string = $contents;
preg_match_all($pattern,$string,$addrArray);
$num = count($addrArray[0]);
$pattern = "/(==>>).+(==>>s)/";
for($i = 0;$i<$num;$i++){
$addrArray[0][$i] = preg_replace($pattern,"",$addrArray[0][$i]);
}
echo "<pre>";
print_r($addrArray);
echo "</pre>";
?>
</body>
</html>
希望本文所述对大家的php程序设计有所帮助。
相关推荐
-
PHP获取ip对应地区和使用网络类型的方法
本文实例讲述了PHP获取ip对应地区和使用网络类型的方法.分享给大家供大家参考.具体分析如下: 这里测试的时候因为ip168网站禁止,所以试着在原有代码上修改为ip138数据库的数据调用,代码如下: <?php //原程序有问题,现修改为ip138数据库 /** * 获取IP地区 * Enter description here ... * @param unknown_type $ip */ function GetArea($ip){ $url = "http://www.ip138.
-
PHP根据IP地址获取所在城市具体实现
文件目录: ipLocation-----qqwry----------QQWry.Dat-----ipCity.class.php ipCity.class.php文件代码: 复制代码 代码如下: <?php class ipCity { /** * 根据ip地址获取对应所在城市 * @param type $userip 用户IP地址 * @return string */ public function getCity( $userip, $dat_p
-
php 获取本地IP代码
复制代码 代码如下: <?function get_client_ip(){if ($_SERVER['REMOTE_ADDR']) {$cip = $_SERVER['REMOTE_ADDR'];} elseif (getenv("REMOTE_ADDR")) {$cip = getenv("REMOTE_ADDR");} elseif (getenv("HTTP_CLIENT_IP")) {$cip = getenv("HTT
-
php中获取远程客户端的真实ip地址的方法
(1).REMOTE_ADDR:浏览当前页面的用户计算机的ip地址 (2).HTTP_X_FORWARDED_FOR: 浏览当前页面的用户计算机的网关 (3).HTTP_CLIENT_IP:客户端的ip 在PHP 中使用 $_SERVER["REMOTE_ADDR"] 来取得客户端的 IP 地址,但如果客户端是使用代理服务器来访问,那取到的就是代理服务器的 IP 地址,而不是真正的客户端 IP 地址.要想透过代理服务器取得客户端的真实 IP 地址,就要使用 $_SERVER["
-
php实现获取局域网所有用户的电脑IP和主机名、及mac地址完整实例
本文所述php实例可以完成获取局域网所有用户的电脑IP和主机名.及mac地址的功能,对于php程序设计人员有一定的参考借鉴价值.完整代码如下: <?php $bIp = gethostbyname($_ENV['COMPUTERNAME']); //获取本机的局域网IP echo "本机IP:",$bIp,"\n"; echo "本机主机名:",gethostbyaddr($bIp),"\n\n\n"; //gethos
-
php REMOTE_ADDR之获取访客IP的代码
<?php $iipp=$_SERVER["REMOTE_ADDR"]; echo $iipp; ?>[/code][code]<?php $user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"]; $user_IP = ($user_IP) ? $user_IP : $_SER
-
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") && strc
-
php获取用户IPv4或IPv6地址的代码
其实这个很简单,只不过我一直想用 ipv6-test 的API做一个获取用户IP地址的东西--无奈JSON获取到的只是本机服务器的IP.算了,不研究了,何况人家提供的widget也挺好用的.谷歌了一下,找到这段代码,可以根据用户环境获取IP地址. 例如IPv6访问 www.shiwo.de 则获取到的是用户的IPv6地址 p.s 前提是网站做了A和AAAA解析 复制代码 代码如下: <?php function getIP() /*获取客户端IP*/ { if (@$_SERVER["HT
-
php获取访问者IP地址汇总
//方法1: $ip = $_SERVER["REMOTE_ADDR"]; echo $ip; //方法2: 复制代码 代码如下: $user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"]; $user_IP = ($user_IP) ? $user_IP : $_SERVER["REM
-
php 获取本机外网/公网IP的代码
大家一般都是用$_SERVER['REMOTE_ADDR']来获取用户IP, 但是如果使用了反向代理的,HTTP头中REMOTE_ADDR就不是用户的地址,反而是上一级代理的地址了. 经过我的研究有两种方法来获取用户的真实外网IP. 方法一:curl 复制代码 代码如下: function get_onlineip() { $ch = curl_init('http://www.ip138.com/ip2city.asp'); curl_setopt($ch, CURLOPT_RETURNTRA
-
PHP 获取客户端真实IP地址多种方法小结
经过复杂的判断与算是的获取IP地址函数 复制代码 代码如下: function getIP() { if (getenv('HTTP_CLIENT_IP')) { $ip = getenv('HTTP_CLIENT_IP'); } elseif (getenv('HTTP_X_FORWARDED_FOR')) { $ip = getenv('HTTP_X_FORWARDED_FOR'); } elseif (getenv('HTTP_X_FORWARDED')) { $ip = getenv('
-
php获取ip的三个属性区别介绍(HTTP_X_FORWARDED_FOR,HTTP_VIA,REMOTE_ADDR)
一.没有使用代理服务器的情况: REMOTE_ADDR = 您的 IP HTTP_VIA = 没数值或不显示 HTTP_X_FORWARDED_FOR = 没数值或不显示 二.使用透明代理服务器的情况:Transparent Proxies REMOTE_ADDR = 最后一个代理服务器 IP HTTP_VIA = 代理服务器 IP HTTP_X_FORWARDED_FOR = 您的真实 IP ,经过多个代理服务器时,这个值类似如下:203.98.182.163, 203.98.182.163,
-
PHP实现获取客户端IP并获取IP信息
代码很简洁,功能很实用,这里就不多废话了,直接奉上: 复制代码 代码如下: <?php /** * 获取客户端IP * @param integer $type 返回类型 0:string,1:long * @return string|long */ function getClientIp($type = 0) { $ip = NULL; if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) { $arr = ex
-
PHP中实现获取IP和地理位置类分享
发现之前有一个脚本没有写完,简单扩充了一下. 获取IP使用的是经典的逻辑,地理定位使用的是SINA的通用接口. 使用方法详见源码: 复制代码 代码如下: <?php /* * GET LOCATION BY SINA IP INTERFACE * * @SOULTEARY 2013.04.14 */ classIP { private $args=array(); function__construct() { $th
随机推荐
- 浅谈JS读取DOM对象(标签)的自定义属性
- 改进一下asp自带的formatNumber函数
- 一分钟教你辨别返修硬盘的方法refurbished
- sql server注入建立虚拟目录的方法
- C#匹配中文字符串的4种正则表达式分享
- Centos 7.2中双网卡绑定及相关问题踩坑记录
- Java this()和super()的使用注意
- Python实现的数据结构与算法之双端队列详解
- 为JavaScript类型增加方法的实现代码(增加功能)
- android图像绘制(四)自定义一个SurfaceView控件
- 利用python程序生成word和PDF文档的方法
- 浅谈JavaScript中面向对象技术的模拟
- Android中创建快捷方式及删除快捷方式实现方法
- 如何恢复SQL Server 2000损坏的数据库文件
- 使用Smarty 获取当前日期时间和格式化日期时间的方法详解
- flexslider.js实现移动端轮播
- java 中RandomAccess接口源码分析
- C#用递归算法解决经典背包问题
- floyd算法实现思路及实例代码
- 网络世界的“后门” -端口的故事①