1. <?php
  2. //这个类似用来获取访客信息的
  3. //方便统计
  4. class visitorInfo
  5. {
  6. //获取访客ip
  7. public function getIp()
  8. {
  9. $ip=false;
  10. if(!empty($_SERVER["HTTP_CLIENT_IP"])){
  11. $ip = $_SERVER["HTTP_CLIENT_IP"];
  12. }
  13. if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
  14. $ips = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);
  15. if ($ip) { array_unshift($ips, $ip); $ip = FALSE; }
  16. for ($i = ; $i < count($ips); $i++) {
  17. if (!eregi ("^(10│172.16│192.168).", $ips[$i])) {
  18. $ip = $ips[$i];
  19. break;
  20. }
  21. }
  22. }
  23. return ($ip ? $ip : $_SERVER['REMOTE_ADDR']);
  24. }
  25.  
  26. //根据ip获取城市、网络运营商等信息
  27. public function findCityByIp($ip){
  28. $data = file_get_contents('http://ip.taobao.com/service/getIpInfo.php?ip='.$ip);
  29. return json_decode($data,$assoc=true);
  30. }
  31.  
  32. //获取用户浏览器类型
  33. public function getBrowser(){
  34. $agent=$_SERVER["HTTP_USER_AGENT"];
  35. if(strpos($agent,'MSIE')!==false || strpos($agent,'rv:11.0')) //ie11判断
  36. return "ie";
  37. else if(strpos($agent,'Firefox')!==false)
  38. return "firefox";
  39. else if(strpos($agent,'Chrome')!==false)
  40. return "chrome";
  41. else if(strpos($agent,'Opera')!==false)
  42. return 'opera';
  43. else if((strpos($agent,'Chrome')==false)&&strpos($agent,'Safari')!==false)
  44. return 'safari';
  45. else
  46. return 'unknown';
  47. }
  48.  
  49. //获取网站来源
  50. public function getFromPage(){
  51. return $_SERVER['HTTP_REFERER'];
  52. }
  53.  
  54. }

获取访客IP、地区位置信息、浏览器、来源页面的更多相关文章

  1. PHP获取访客ip、系统、浏览器等信息[转]

    1.获取访客操作系统信息   <?php   function GetOs() {   if (!empty($_SERVER['HTTP_USER_AGENT'])) {   $OS = $_ ...

  2. PHP获取访客IP、地区位置信息、浏览器、来源页面

    不多说了,每个方法都注释了,可以直接用: <?php //这个类似用来获取访客信息的 //方便统计 class visitorInfo { //获取访客ip public function ge ...

  3. 利用PHP获取访客IP、地区位置、浏览器及来源页面等信息

    这篇文章主要介绍了利用PHP获取访客IP.地区位置.浏览器及来源页面等信息的相关资料,文中给出了详细的示例代码供大家参考学习,对大家具有一定的参考借鉴价值,需要的朋友们下面来一起看看吧. 前言 本文中 ...

  4. JS获取访客IP+判断归属地+自动跳转

    由于公司业务需要,需要对网站特定地区的访客进行不同跳转.比如,上海的用户跳转到“shanghai.url.cn”,南京的用户跳转到“nanjing.url.cn”.下面就是我的实现方法,分享出来,顺便 ...

  5. JS获取访客IP进行自动跳转

    因业务需要进行地区判断跳转指定站点,下面是我个人实现的办法,分享给大家,仅供参考,切勿做非法用途 第一步,获取IP并判断归属地 直接使用搜狐的IP库查询接口 <script type=" ...

  6. PHP获取操作系统、IP、地理位置、浏览器、ISP等信息_PHP类代码

    PHP语言.浏览器.操作系统.IP.地理位置.ISP,本PHP类里面有以下几种方法,同时也是用法说明: <?php class class_guest_info{ function GetLan ...

  7. Wordpress用文件记录访客 IP和访问量

    1.记录访问量,显示访客IP [php原码] <?php /*打开文件用于记录访问量,如果文件不存在自动创建*/ $counterFile = "counter.txt"; ...

  8. PHP实例:获取操作系统、IP、地理位置、浏览器、等信息

    获取访客操作系统以及浏览器语言 <?php function GetBrowser(){ if(!empty($_SERVER['HTTP_USER_AGENT'])){ $br = $_SER ...

  9. php 获取客户端的ip、地理信息、浏览器信息、本地真实ip

    转自:http://www.blhere.com/948.html 这是非常实用的php常用类.获取客户端的ip.地理信息.浏览器信息.本地真实ip 1234567891011121314151617 ...

随机推荐

  1. Spring JDBC SimpleJdbcCall类示例

    org.springframework.jdbc.core.SimpleJdbcCall类是表示对存储过程或存储函数的调用的多线程,可重用的对象. 它提供元数据处理以简化访问基本存储过程/函数所需的代 ...

  2. 如何使用 OpenFileDialog 组件 (选择文件组件)

        向程序设计窗体中添加一个OpenFileDialog控件,在属性对话框中设置其Filter属性为 "所有文件(*.*)|*.*|文本文件(*.txt)|*.txt|WPS文档(*.w ...

  3. Linux使用 tar命令-g参数进行增量+差异备份、还原文件

    原文链接:http://www.cnblogs.com/gnuhpc/ 完整备份: 建立测试路径与档案 mkdir test touch test/{a,b,c} 在test下生成三个文件 执行完整备 ...

  4. CSS3 3D立方体翻转菜单实现教程

    今天我们来看一个非常有创意的CSS3 3D菜单,这个菜单的菜单项是可以旋转的长方体,鼠标滑过是长方体即可旋转,看看下面的效果图,是不是感觉非常酷,我觉得这个菜单很适合用在咱们开发人员的个人网站上. 当 ...

  5. com.alibaba.com.caucho.hessian.io.SerializerFactory getDeserializer

    2016-1-27 14:40:25 com.alibaba.com.caucho.hessian.io.SerializerFactory getDeserializer 警告: Hessian/B ...

  6. css 设置背景图片铺满固定不动

    #page{ position: relative; width: 100%; height: 100%; background-image:url(../img/bg.JPG); backgroun ...

  7. 基于HBase Hadoop 分布式集群环境下的MapReduce程序开发

    HBase分布式集群环境搭建成功后,连续4.5天实验客户端Map/Reduce程序开发,这方面的代码网上多得是,写个测试代码非常容易,可是真正运行起来可说是历经挫折.下面就是我最终调通并让程序在集群上 ...

  8. 破解IT运维成本困境,专业化分工是妙方

    随着IT建设的不断深入和发展,IT运维成为了企业运营的必需品.许多企业的IT预算相比于去年虽然有了很大的提高,但总体来说还是非常紧张.上周,我参加了一个CIO沙龙研讨会,现场调查问到目前CIO在IT运 ...

  9. centos6.8 安装Python2.7后, yum出现“No module named yum”错误

    出现yum错误:No module named yum 解决方法,查看 /usr/bin下python有哪几个版本 ll /usr/bin 我这里是:2.6  和  2.7 (刚安装的) 由于yum命 ...

  10. 使用pyinotify实现加强版的linux tail -f 命令,并且对日志类型的文本进行单独优化着色显示。

    tail -f命令不能自动切换切片文件,例如日志是每100M生成一个新文件,tail -f不能自动的切换文件,必须关闭然后重新运行tail -f 此篇使用pyinotify,检测文件更新,并实现tai ...