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

 更新时间:2014年01月07日 16:24:48   作者:  
需要显示评论者的地域属性,这个特点可以通过记录会员IP的地理信息来实现,下面提供一个淘宝IP地址查询类,简化相关的信息查询,大家参考使用吧

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

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

复制代码 代码如下:

<?php

class 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();

相关文章

  • 彻底删除thinkphp3.1案例blog标签的方法

    彻底删除thinkphp3.1案例blog标签的方法

    这篇文章主要介绍了彻底删除thinkphp3.1案例blog标签的方法,以thinkphp3.1框架中的案例blog为基础介绍了删除日记时同步删除tag冗余数据的方法,非常具有实用价值,需要的朋友可以参考下
    2014-12-12
  • Thinkphp调用Image类生成缩略图的方法

    Thinkphp调用Image类生成缩略图的方法

    这篇文章主要介绍了Thinkphp调用Image类生成缩略图的方法,实例分析了Thinkphp调用Image类生成缩略图的使用原理与相关技巧,需要的朋友可以参考下
    2015-03-03
  • 微信接口生成带参数的二维码

    微信接口生成带参数的二维码

    为了满足用户渠道推广分析的需要,公众平台提供了生成带参数二维码的接口,获取带参数的二维码的过程包括两步,具体步骤大家参考下本文
    2017-07-07
  • laravel 执行迁移回滚示例

    laravel 执行迁移回滚示例

    今天小编就为大家分享一篇laravel 执行迁移回滚示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • Zend Framework教程之Zend_Config_Ini用法分析

    Zend Framework教程之Zend_Config_Ini用法分析

    这篇文章主要介绍了Zend Framework教程之Zend_Config_Ini用法,较为详细的分析了Zend_Config_Ini操作配置数据的相关技巧,需要的朋友可以参考下
    2016-03-03
  • Zend Framework框架的session会话周期及次数限制使用示例

    Zend Framework框架的session会话周期及次数限制使用示例

    这篇文章主要介绍了Zend Framework框架的session会话周期及次数限制使用示例,需要的朋友可以参考下
    2014-03-03
  • PHP 根据IP地址控制访问的代码

    PHP 根据IP地址控制访问的代码

    有时需要根据 IP 地址控制访问,以限制或引导某些访问请求。比如允许局域网段中的访客正常访问,但禁止外网访问。芒果简单介绍用 PHP 脚本实现此功能的方法。
    2010-04-04
  • PHP+Mysql无刷新问答评论系统(源码)

    PHP+Mysql无刷新问答评论系统(源码)

    自己写的一个评论系统源码分享给大家,包括有表情,还有评论机制,代码简单易懂,需要的朋友参考下
    2016-12-12
  • php curl获取到json对象并转成数组array的方法

    php curl获取到json对象并转成数组array的方法

    今天小编就为大家分享一篇php curl获取到json对象并转成数组array的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-05-05
  • PHP redis实现超迷你全文检索

    PHP redis实现超迷你全文检索

    这篇文章主要为大家详细介绍了PHP redis实现超迷你全文检索的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-03-03

最新评论