淘宝ip地址查询类分享(利用淘宝ip库)


Posted in PHP onJanuary 07, 2014

淘宝公司提供了一个很好用的IP地理信息查询接口。在这里:http://ip.taobao.com/

以下这个taobaoIPQuery类将极大的简化相关的信息查询。

<?phpclass taobaoIPQuery {
    private $m_ip;
    private $m_content;
    public function __construct($ip) {
        if (isset($ip)) {
            $this->m_ip = $ip;
        } else {
            $this->m_ip = "";
        }
        if (!empty($this->m_ip)) {
            $url_handle = curl_init();
            curl_setopt($url_handle, CURLOPT_URL, "http://ip.taobao.com/service/getIpInfo.php?ip=" . $this->m_ip);
            curl_setopt($url_handle, CURLOPT_RETURNTRANSFER, true);
            $this->m_content = curl_exec($url_handle);
            curl_close($url_handle);
            if ($this->m_content) {
                $this->m_content = json_decode($this->m_content);
                if ($this->m_content->{'code'} == 1) {
                    exit("query error!");
                }
            } else {
                exit("curl error!");
            }
        } else {
            exit("ip address must be not empty!");
        }
    }
    public function get_region() {
        return $this->m_content->{'data'}->{'region'};
    }
    public function get_isp() {
        return $this->m_content->{'data'}->{'isp'};
    }
    public function get_country() {
        return $this->m_content->{'data'}->{'country'};
    }
    public function get_city() {
        return $this->m_content->{'data'}->{'city'};
    }
}

调用很简单

$ip = $_SERVER["REMOTE_ADDR"];
$ipquery = new taobaoIPQuery($ip);
$region = $ipquery->get_region();
$country = $ipquery->get_country();
$city = $ipquery->get_city();
PHP 相关文章推荐
php中的登陆login
Jan 18 PHP
php的curl实现get和post的代码
Aug 23 PHP
php下通过IP获取地理位置的代码(小偷程序)
Jun 09 PHP
深入PHP autoload机制的详解
Jun 09 PHP
基于PHP的简单采集数据入库程序
Jul 30 PHP
php中array_multisort对多维数组排序的方法
Jun 21 PHP
PHP文件操作之获取目录下文件与计算相对路径的方法
Jan 08 PHP
php单例模式的简单实现方法
Jun 10 PHP
php数据库的增删改查 php与javascript之间的交互
Aug 31 PHP
PHP实现的简单sha1加密功能示例
Aug 27 PHP
php防止表单重复提交实例讲解
Feb 11 PHP
laravel5环境隐藏index.php后缀(apache)的方法
Oct 12 PHP
PHP中如何实现常用邮箱的基本判断
Jan 07 #PHP
PHP实现变色验证码实例
Jan 06 #PHP
有关于PHP中常见数据类型的汇总分享
Jan 06 #PHP
用php简单实现加减乘除计算器
Jan 06 #PHP
PHP面向对象之旅:深入理解static变量与方法
Jan 06 #PHP
浅析ThinkPHP中的pathinfo模式和URL重写
Jan 06 #PHP
php Calender(日历)代码分享
Jan 03 #PHP
You might like
PHP系统流量分析的程序
2006/10/09 PHP
mysql4.1以上版本连接时出现Client does not support authentication protocol问题解决办法
2007/03/15 PHP
基于PHP CURL用法的深入分析
2013/06/09 PHP
smarty内置函数section的用法
2015/01/22 PHP
php编程每天必学之验证码
2016/03/03 PHP
Jquery实现无刷新DropDownList联动实现代码
2010/03/08 Javascript
JS仿flash上传头像效果实现代码
2011/07/18 Javascript
js下将阿拉伯数字每三位一逗号分隔(如:15000000转化为15,000,000)
2014/06/02 Javascript
使用AngularJS编写较为优美的JavaScript代码指南
2015/06/19 Javascript
jquery实现一个简单的表单验证实例
2016/03/30 Javascript
JS简单循环遍历json数组的方法
2016/04/22 Javascript
js实现九宫格拼图小游戏
2017/02/13 Javascript
angularjs+bootstrap实现自定义分页的实例代码
2017/06/19 Javascript
vue中使用refs定位dom出现undefined的解决方法
2017/12/21 Javascript
JS实现的哈夫曼编码示例【原始版与修改版】
2018/04/22 Javascript
jQuery 点击获取验证码按钮及倒计时功能
2018/09/20 jQuery
JavaScript使用百度ECharts插件绘制饼图操作示例
2019/11/26 Javascript
[01:13:51]TNC vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
在Python中使用PIL模块处理图像的教程
2015/04/29 Python
Python实现上下班抢个顺风单脚本
2018/02/07 Python
利用Python写一个爬妹子的爬虫
2018/06/08 Python
Python爬虫文件下载图文教程
2018/12/23 Python
Python Django切换MySQL数据库实例详解
2019/07/16 Python
django使用haystack调用Elasticsearch实现索引搜索
2019/07/24 Python
Python实现的微信红包提醒功能示例
2019/08/22 Python
Python selenium环境搭建实现过程解析
2020/09/08 Python
Python内置函数及功能简介汇总
2020/10/13 Python
Nike西班牙官方网站:Nike.com (ES)
2017/10/30 全球购物
我看到了用指针调用函数的不同语法形式
2014/07/16 面试题
租房合同协议书
2014/04/09 职场文书
勿忘国耻9.18演讲稿(经典篇)
2014/09/14 职场文书
代领学位证书毕业证书委托书
2014/09/30 职场文书
2014年青年教师工作总结
2014/12/17 职场文书
2019下半年英语教师的教学工作计划(3篇)
2019/09/25 职场文书
vue+elementui 实现新增和修改共用一个弹框的完整代码
2021/06/08 Vue.js
Win10服务主机占用内存怎么办?Win10服务主机进程占用大量内存解决方法
2022/09/23 数码科技