php获取指定(访客)IP所有信息(地址、邮政编码、国家、经纬度等)的方法

yipeiwu_com6年前PHP代码库

本文实例讲述了php获取指定(访客)IP所有信息(地址、邮政编码、国家、经纬度等)的方法。分享给大家供大家参考。具体如下:

调用方法非常简单。这个也需要数据库来支持。数据库中中文和拼音共存才可以。

废话不多说,看代码:

<?php  
function getIpInfo($ip,$timeout=15) {  
  if(!function_exists('curl_init') or !function_exists('simplexml_load_string')) return false;  
  $ch = curl_init("http://ipinfodb.com/ip_query2.php?ip={$ip}&timezone=true");  
  $options = array(  
      CURLOPT_RETURNTRANSFER => true,  
    );  
  curl_setopt_array($ch,$options);  
  $res = curl_exec($ch);  
  curl_close($ch);  
  
  if($xml = simplexml_load_string($res)) {  
    $return = array();  
    foreach ($xml->Location->children() as $key=>$item) {  
      $return[$key] = strtolower($item);  
    }  
    return $return;  
  } else {  
    return false;  
  }  
}  
$current_Ip_Info = getIpInfo('119.7.8.255');  
var_dump($current_Ip_Info); 

希望本文所述对大家的php程序设计有所帮助。

相关文章

PHP分享图片的生成方法

PHP分享图片的生成方法

最近工作需求需要生成分享图片,最初用js的html2canvas截图插件各种问题,后来干脆PHP的PG库在后台生成图片,很愉快的解决了各种问题,我们要实现的效果如下图: 假设代码中用到...

获取php页面执行时间,数据库读写次数,函数调用次数等(THINKphp)

获取php页面执行时间,数据库读写次数,函数调用次数等(THINKphp)

THINKphp里面有调试运行状态的效果: Process:0.2463s (Load:0.0003s Init:0.0010s Exec:0.1095s Template:0.1355...

php数组排序usort、uksort与sort函数用法

本文实例讲述了php数组排序usort、uksort与sort函数用法。分享给大家供大家参考。具体用法分析如下: 对数组排序:usort() 函数使用用户自定义的函数对数组排序,实例代码...

PHP实现递归无限级分类

PHP实现递归无限级分类

在一些复杂的系统中,要求对信息栏目进行无限级的分类,以增强系统的灵活性。那么PHP是如何实现无限级分类的呢?我们在本文中使用递归算法并结合mysql数据表实现无限级分类。 递归,简单的说...

PHP多进程简单实例小结

本文实例讲述了PHP多进程。分享给大家供大家参考,具体如下: PHP创建多进程需要使用到pcntl模块 在编译时加上--enable-pcntl打开进程控制支持,不是Unix类系统不支持...