可以记录访客的地理位置,操作系统,浏览器,IP,时间和访问的文件。

1.首先创建一个comm_function.php文件:

<?php
//echo $_SERVER['HTTP_USER_AGENT'];
//echo "<br />".$_SERVER ['REMOTE_ADDR'];/*** 获取客户端类型,手机还是电脑,以及相应的操作系统类型。** @param string $subject*/
function get_os($agent) {$os = false;if (preg_match ( '/win/i', $agent ) && strpos ( $agent, '95' )) {$os = 'Windows 95';} else if (preg_match ( '/win 9x/i', $agent ) && strpos ( $agent, '4.90' )) {$os = 'Windows ME';} else if (preg_match ( '/win/i', $agent ) && preg_match ( '/98/i', $agent )) {$os = 'Windows 98';} else if (preg_match ( '/win/i', $agent ) && preg_match ( '/nt 6.0/i', $agent )) {$os = 'Windows Vista';} else if (preg_match ( '/win/i', $agent ) && preg_match ( '/nt 6.1/i', $agent )) {$os = 'Windows 7';} else if (preg_match ( '/win/i', $agent ) && preg_match ( '/nt 6.2/i', $agent )) {$os = 'Windows 8';} else if (preg_match ( '/win/i', $agent ) && preg_match ( '/nt 10.0/i', $agent )) {$os = 'Windows 10'; // 添加win10判断} else if (preg_match ( '/win/i', $agent ) && preg_match ( '/nt 5.1/i', $agent )) {$os = 'Windows XP';} else if (preg_match ( '/win/i', $agent ) && preg_match ( '/nt 5/i', $agent )) {$os = 'Windows 2000';} else if (preg_match ( '/win/i', $agent ) && preg_match ( '/nt/i', $agent )) {$os = 'Windows NT';} else if (preg_match ( '/win/i', $agent ) && preg_match ( '/32/i', $agent )) {$os = 'Windows 32';} else if (preg_match ( '/linux/i', $agent )) {if(preg_match("/Mobile/", $agent)){if(preg_match("/QQ/i", $agent)){$os = "Android QQ Browser";}else{$os = "Android Browser";}}else{$os = 'PC-Linux';}} else if (preg_match ( '/Mac/i', $agent )) {if(preg_match("/Mobile/", $agent)){if(preg_match("/QQ/i", $agent)){$os = "IPhone QQ Browser";}else{$os = "IPhone Browser";}}else{$os = 'Mac OS X';}} else if (preg_match ( '/unix/i', $agent )) {$os = 'Unix';} else if (preg_match ( '/sun/i', $agent ) && preg_match ( '/os/i', $agent )) {$os = 'SunOS';} else if (preg_match ( '/ibm/i', $agent ) && preg_match ( '/os/i', $agent )) {$os = 'IBM OS/2';} else if (preg_match ( '/Mac/i', $agent ) && preg_match ( '/PC/i', $agent )) {$os = 'Macintosh';} else if (preg_match ( '/PowerPC/i', $agent )) {$os = 'PowerPC';} else if (preg_match ( '/AIX/i', $agent )) {$os = 'AIX';} else if (preg_match ( '/HPUX/i', $agent )) {$os = 'HPUX';} else if (preg_match ( '/NetBSD/i', $agent )) {$os = 'NetBSD';} else if (preg_match ( '/BSD/i', $agent )) {$os = 'BSD';} else if (preg_match ( '/OSF1/i', $agent )) {$os = 'OSF1';} else if (preg_match ( '/IRIX/i', $agent )) {$os = 'IRIX';} else if (preg_match ( '/FreeBSD/i', $agent )) {$os = 'FreeBSD';} else if (preg_match ( '/teleport/i', $agent )) {$os = 'teleport';} else if (preg_match ( '/flashget/i', $agent )) {$os = 'flashget';} else if (preg_match ( '/webzip/i', $agent )) {$os = 'webzip';} else if (preg_match ( '/offline/i', $agent )) {$os = 'offline';} else {$os = '未知操作系统';}return $os;
}/*** 获取 客户端的浏览器类型* @return string*/
function get_broswer($sys){if (stripos($sys, "Firefox/") > 0) {preg_match("/Firefox\/([^;)]+)+/i", $sys, $b);$exp[0] = "Firefox";$exp[1] = $b[1];  //获取火狐浏览器的版本号} elseif (stripos($sys, "Maxthon") > 0) {preg_match("/Maxthon\/([\d\.]+)/", $sys, $aoyou);$exp[0] = "傲游";$exp[1] = $aoyou[1];} elseif (stripos($sys, "MSIE") > 0) {preg_match("/MSIE\s+([^;)]+)+/i", $sys, $ie);$exp[0] = "IE";$exp[1] = $ie[1];  //获取IE的版本号} elseif (stripos($sys, "OPR") > 0) {preg_match("/OPR\/([\d\.]+)/", $sys, $opera);$exp[0] = "Opera";$exp[1] = $opera[1];} elseif(stripos($sys, "Edge") > 0) {//win10 Edge浏览器 添加了chrome内核标记 在判断Chrome之前匹配preg_match("/Edge\/([\d\.]+)/", $sys, $Edge);$exp[0] = "Edge";$exp[1] = $Edge[1];} elseif (stripos($sys, "Chrome") > 0) {preg_match("/Chrome\/([\d\.]+)/", $sys, $google);$exp[0] = "Chrome";$exp[1] = $google[1];  //获取google chrome的版本号} elseif(stripos($sys,'rv:')>0 && stripos($sys,'Gecko')>0){preg_match("/rv:([\d\.]+)/", $sys, $IE);$exp[0] = "IE";$exp[1] = $IE[1];}else {$exp[0] = "未知浏览器";$exp[1] = "";}return $exp[0].'('.$exp[1].')';
}/*** 根据 客户端IP 获取到其具体的位置信息* @param unknown $ip* @return string*/
function get_address_by_ip($ip) {$url = "http://ip.taobao.com/service/getIpInfo.php?ip=".$ip;$curl = curl_init();curl_setopt($curl, CURLOPT_URL, $url);curl_setopt($curl, CURLOPT_HEADER, 0);curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);$info = curl_exec($curl);curl_close($curl);return $info;
}function clientlog() {$useragent = $_SERVER ['HTTP_USER_AGENT'];$clientip = $_SERVER ['REMOTE_ADDR'];$client_info = get_os ( $useragent ) . "---" . get_broswer ( $useragent );$rawdata_position = get_address_by_ip ( $clientip );$rawdata_position = json_decode($rawdata_position, true);$country = $rawdata_position['data']['country'];$province = $rawdata_position['data']['region'];$city = $rawdata_position['data']['city'];$nettype = $rawdata_position['data']['isp'];$time = date ( 'y-m-d h:m:s' );$data = "来自{$country} {$province} {$city }{$nettype} 的客户端: {$client_info},IP为:{$clientip},在{$time}时刻访问了{$_SERVER['PHP_SELF']}文件!\r\n";$filename = "./log.log";if (! file_exists ( $filename )) {fopen ( $filename, "w+" );}file_put_contents ( $filename, $data, FILE_APPEND );
}

2.在别的文件引入这个comm_function.php

require_once "comm_function.php";

PHP 记录访客的浏览信息相关推荐

  1. php监控访客_PHP 记录访客的浏览信息方法

    下面小编就为大家分享一篇PHP 记录访客的浏览信息方法,具有很好的参考和学习PHP价值,希望对大家有所帮助.对PHP感兴趣的一起跟随小编过来看看吧 可以记录访客的地理位置,操作系统,浏览器,IP,时间 ...

  2. php网页抓取浏览者手机号码_PHP 记录访客的浏览信息方法

    可以记录访客的地理位置,操作系统,浏览器,IP,时间和访问的文件. 1.首先创建一个comm_function.php文件: //echo $_SERVER['HTTP_USER_AGENT']; / ...

  3. 网站如何记录访客的个人信息?

    大多数网站都会带有留言或者评论功能,那么访客在留言或者评论时肯定要记录访客的个人信息!这样访客在下一次访问网站时不需要再次填写个人信息,直接评论就ok啦!那么怎么记录访客的个人信息呢? 一.利用coo ...

  4. php监控访客_PHP如何操作可以记录访客浏览信息

    这次给大家带来PHP如何操作可以记录访客浏览信息,PHP记录访客浏览信息的注意事项有哪些,下面就是实战案例,一起来看一下. 可以记录访客的地理位置,操作系统,浏览器,IP,时间和访问的文件. 1.首先 ...

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

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

  6. 微信服务器是否记录视频信息,微信视频号有访客记录吗 微信视频号可以查看浏览记录吗...

    视频号是微信的一个全新版块,我们可以在视频号浏览视频号发布的短视频,同时还可以进行点赞.留言.转发等操作,那我们自行发布的视频,微信视频号有访客记录吗?下面就和IT百科一起来看看吧! 微信中的视频号, ...

  7. chromebook刷机_如何以访客身份在Chrome和Chromebook上浏览

    chromebook刷机 Guest mode for Google Chrome and on Chromebooks is perfect if you need to lend your com ...

  8. 基于博客系统的访客日志记录

    当我们做的一些应用需要记录一些接口被访问时用户的信息时,我们就需要用到一些记录请求的技术,并记录日志到数据库.本文章使用的方法:注解+AOP 原理:事先在数据库中建立一个记录访客日志的一张表.先自定义 ...

  9. 【探花交友DAY 09】最近访客和FastDFS实现小视频功能

    1. 访客功能 1.1 功能分析 在用户的首页,如果某一个用户查看过当前用户的详细信息,那么就会显示最近来访的访客.这一功能类似于QQ空间中的访客功能. 访客功能实际上分为了三大部分 在用户查询某一个 ...

最新文章

  1. html5表单实例元素,HTML5新表单元素的图文实例-
  2. PHP6 Web 开发读书笔记
  3. 关于2020年第十五届全国大学生智能汽车竞赛山东赛区技术答辩的相关规则
  4. Java实现二维码QRCode的编码和解码
  5. 算法提高 日期计算c语言,算法提高 日期计算
  6. 关于ScreenToClient
  7. 已解决:有道云笔记web端和PC端频繁崩溃的解决方法
  8. CocoaTouch框架与构建应用界面
  9. Spring 最新漏洞修复
  10. Project Euler 3
  11. Dojo.Book中文版
  12. 51nod1679 连通率
  13. 【Matlab】input 请求用户输入
  14. 从马文到AlphaGo AI走过了怎样的70年?
  15. 华为鸿蒙摄像头pro,华为发布智能摄像头Pro:首搭载鸿蒙OS,三百几就有得玩监控...
  16. puzzle(1211)消除:2048最大分数
  17. 安卓版围棋软件《飞燕围棋》的计划
  18. 抖音视频审核不通过,可能你触碰以下红线丨国仁网络
  19. 交换机堆叠知识:概述,配置与常见问题解答
  20. python期末编程题_Python 语言程序设计二级教程第七章编程题

热门文章

  1. redis数据类型底层实现
  2. 如何判定苹果开发者账号属于哪个国家?
  3. 微信公众号开发--普通表情与emoji表情的处理 (实用、超赞有图片资源)
  4. 人机融合智能:人工智能3.0。道翰天琼认知智能机器人平台API接口大脑为您揭秘
  5. 关于一个杯子的测试用例
  6. AB(罗克韦尔)PLC如何通过程序直接与外插SD卡进行数据读写?
  7. 【数学建模类比赛经验分享】——国赛
  8. 著名歌唱家大衣哥太豪横了,参加商演被主办方请到五星级酒店就餐
  9. ios实时卡顿检测和优化方案
  10. 基于springboot小型命题系统毕业设计源码011508