PHP记录页面停留时间的方法
本文实例讲述了PHP记录页面停留时间的方法。分享给大家供大家参考,具体如下:
首先在要监控的页面添加JS如下
<script> var dt1 = new Date(); window.onbeforeunload = function(){ var dt2 = new Date(); var ms = dt2.getTime() - dt1.getTime(); var img = new Image(); img.src = 'log.php?stay_ms=' + ms; } </script>
log.php 代码如下
<?php $refer = ''; if (isset($_SERVER['HTTP_REFERER'])) { $refer = $_SERVER['HTTP_REFERER']; } $user_agent = ''; if (isset($_SERVER['HTTP_USER_AGENT'])) { $user_agent = $_SERVER['HTTP_USER_AGENT']; } $ip = $_SERVER['REMOTE_ADDR']; if (isset($_GET['stay_ms'])) { $log = '[' . date("Y-m-d H:i:s") . '] ' . $ip . ' ' . $refer . ' @ ' . number_format($_GET['stay_ms']) . "ms\r\n"; file_put_contents("log/log_" . date("Y-m-d") . ".txt", $log, FILE_APPEND); } if ($_SERVER['QUERY_STRING'] == '' || isset($_GET['day'])) { $day = isset($_GET['day']) ? $_GET['day'] : date("Y-m-d"); $file = "log/log_" .$day . ".txt"; if (file_exists($file)) { $log = file_get_contents($file); echo nl2br($log); } }
更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP网络编程技巧总结》、《PHP基本语法入门教程》、《php操作office文档技巧总结(包括word,excel,access,ppt)》、《php日期与时间用法总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
相关推荐
-
获取php页面执行时间,数据库读写次数,函数调用次数等(THINKphp)
THINKphp里面有调试运行状态的效果: Process:0.2463s (Load:0.0003s Init:0.0010s Exec:0.1095s Template:0.1355s )|DB:13 queries 0 writes| Cache:2 gets,0 writes|UseMem:415 kb|LoadFile:20|CallFun:63,1370 代表的含义: 运行信息: 整体执行时间0.2463s ( 加载:0.0003s 初始化:0.0010s 执行:0.1095s 模板
-
PHP 一个页面执行时间类代码
核心代码 <?php class Timer//页面执行时间类 { var starttime;//页面开始执行时间 var stoptime;//页面结束执行时间 var spendtime;//页面执行花费时间 function getmicrotime()//获取返回当前微秒数的浮点数 { list(usec,sec)=explode(" ",microtime()); return ((float)usec + (float)sec); } function start(
-
php实现的Timer页面运行时间监测类
本文实例讲述了php实现的Timer页面运行时间监测类及其用法,是一款非常实用的PHP类文件.分享给大家供大家参考.具体分析如下: 该php Timer页面运行时间监测类,可按不同key监测不同的运行时间. Timer.class.php类文件如下: <?php /** Timer class, 计算页面运行时间,可按不同key计算不同的运行时间 * Date: 2014-02-28 * Author: fdipzone * Ver: 1.0 * * Func: * public start 记
-
解析PHP计算页面执行时间的实现代码
如下所示: 复制代码 代码如下: <?php $t = new executeTime; phpinfo(); class executeTime{ private $microtime; public function __construct(){ $this->microtime = microtime(true); } public function getNow(){ $this->__dec
-
php设置页面超时时间解决方法
有时候我的页面因为网络卡,会一直转,我想是不是可以给页面设置一个超时时间,多久没反应就提示超时 比如php里的set_time_limit(300) 我想不是php页面也有个超时机制 ------解决思路---------------------- php 里不就是set_time_limit() 吗,你还可以设置php.ini中的max_execution_time来改变全局超时时间. ------解决思路---------------------- max_execution_time --
-
php简单计算页面加载时间的方法
本文实例讲述了php简单计算页面加载时间的方法.分享给大家供大家参考.具体实现方法如下: 简单的把开始时间放在页面头部,结束时间放在页面尾部,计算页面加载时间 $start = time(); // put a long operation in here sleep(2); $diff = time() - $start; print "This page needed $diff seconds to load :-)"; // if you want a more exact v
-
php 页面执行时间计算代码
代码如下: 复制代码 代码如下: <? $pagestartime=microtime(); ?> <!--网页内容 start--> 网页内容 ... ... <!--网页内容 end--> <? $pageendtime = microtime(); $starttime = explode(" ",$pagestartime); $endtime = explode(" ",$pageendtime); $totalt
-
计算php页面运行时间的函数介绍
一个计算php页面运行时间的函数. 复制代码 代码如下: <?php/*@ 计算php程序运行时间*/function microtime_float(){list($usec, $sec) = explode(" ", microtime());return ((float)$usec + (float)$sec);}//开始计时,放在头部$starttime = microtime_float();//结束计时,放在最底部$runtime = number_format((m
-
PHP记录页面停留时间的方法
本文实例讲述了PHP记录页面停留时间的方法.分享给大家供大家参考,具体如下: 首先在要监控的页面添加JS如下 <script> var dt1 = new Date(); window.onbeforeunload = function(){ var dt2 = new Date(); var ms = dt2.getTime() - dt1.getTime(); var img = new Image(); img.src = 'log.php?stay_ms=' + ms; } </
-
vue 移动端记录页面浏览位置的方法
记录一下本次项目我使用的方法,有更简单便捷的方法,欢迎交流 描述: 假设有a b c 页面 从a页面 到 b页面 ,b页面到c页面 b到c页面的时候需要记录当前b的浏览位置,c返回到b的时候滚动到上次浏览的位置 b在返回a的时候,在从a进入b 返回的是b的顶部(也就是不记录浏览位置) 做法: 使用到了vuex ,beforeRouteLeave 1.首先在vuex中state定义一个变量来记录当前的浏览的位置 //state中定义数据 state: { carrerTouScroll: { he
-
使用Angular缓存父页面数据的方法
angular做单页面应用是一个比较好的框架,但是它有一定的入门难度,对于新手来说可能会碰到很多坑,也有许多难题,大部分仔细看文档,找社区是能解决的. 但有些问题也许资料比较少,最近遇到过一个要缓存父页面的问题,就是点击进入子页后,再返回时父页面的数据要缓存下来,包括滚动条的位置.再做的过程当中查过 许多资料,都说的不很详细,今天把方法记录下来,供参考. 要想缓存,要用到嵌套路由(ui-router): 有三个嵌套的方法: 使用"点标记法",例如:.state('contacts
-
访客站点停留时间和页面停留时间的实现方案
站点停留时间(Time on Site,下文简称Ts) 和 页面停留时间(Time on Page,下文简称Tp)是用户体验分析及流量质量监控的重要指标.但是极少有人知道网站访问的平均时间(Average Time on Site)是怎么计算出来的.无论是使用竞争情报分析工具,还是某种网站分析解决方案(在网站分析解决方案中不论是WebLog还是JavaScript的标签方式获得的数据,都没几个人知道网站访问平均时间是怎么算出来的). 因此,写这篇文章就是想要解释清楚,Tp和Ts是如何计算的. 案
-
Spring boot 跳转到jsp页面的实现方法
本人正在学习Spring boot,搜索了很多关于Spring boot 跳转到jsp页面的实现方法介绍,下面我来记录一下,有需要了解的朋友可参考.希望此文章对各位有所帮助. @Controller注解 1.application.properties文件中配置 # 配置jsp文件的位置,默认位置为:src/main/webapp spring.mvc.view.prefix=/pages/ # 配置jsp文件的后缀 spring.mvc.view.suffix=.jsp 2.Controlle
-
CodeIgniter记录错误日志的方法全面总结
本文实例讲述了CodeIgniter记录错误日志的方法.分享给大家供大家参考,具体如下: CI工作流程: 所有的入口都从根目录下的index.php进入,确定应用所在目录后,加载 codeigniter/CodeIgniter.php 文件,该文件会顺序加载以下文件执行整个流程. index.php:检测文件路径,加载codeigniter.php文件 codeigniter.php: 加载 Common/constants....文件.获取文件模式.设置计时器.实例化类(错误类.扩展类.钩子类
-
JS实现获取键盘按下的按键并显示在页面上的方法
本文实例讲述了JS实现获取键盘按下的按键并显示在页面上的方法.分享给大家供大家参考,具体如下: 请你使用键盘输入一些字符,这些字符就被显示在网页的空白处,是不是少了文本框或文本域之类的东西,觉得挺不习惯呢?这个效果是应用了JavaScript中的document.onkeypress对象,监测键盘的一举一动,并记录下哪些键被按下,有意思吧,想研究Js的朋友,就从这些小例子开始吧. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-web-sh
-
vue.js分页中单击页码更换页面内容的方法(配合spring springmvc)
html代码: <section class="container page-home"> <div id="main-content" class="wrap-container zerogrid"> <article id="news_content" v-for="item in items"> <div class="col-1-2 right&q
-
Django框架之登录后自定义跳转页面的实现方法
Django auth 登陆后页面跳转至/account/profile,修改跳转至其他页面 这几天在学习django,django功能很强大,自带的auth,基本可以满足用户注册登陆登出,简单的用户注册登陆系统使用django auth足矣.当然也不是拿来就能用的,需要自己写登陆页面的模板,也很简单.自己尝试了一下,发现一个问题,当验证登陆成功后,页面会自动跳转到/account/profile,我并不想把页面跳转到这个页面,如何修改呢? 查了一堆网页,还是官网靠谱,很简单,就在project
-
vue router 跳转时打开新页面的示例方法
记录一下在vue项目中如何实现跳转到一个新页面(一个比较简单又比较基础的问题了),有两个方法: 1.<vue-link>标签实现新窗口打开 官方文档中说 v-link 指令被 <router-link> 组件指令替代,且 <router-link> 不支持 target="_blank" 属性,如果需要打开一个新窗口必须要用 <a> 标签,但事实上vue2版本的 <router-link> 是支持 target="_
随机推荐
- jQuery拖拽通过八个点改变div大小
- PHP5中使用PDO连接数据库的方法
- thinkphp分页集成实例
- Go语言的os包中常用函数初步归纳
- PagerSlidingTabStrip制作Android带标签的多界面滑动切换
- php解析字符串里所有URL地址的方法
- 详解JS获取HTML DOM元素的8种方法
- Bootstrap按钮组简单实现代码
- div层跨越iframe帧显示在上面的解决方法附代码
- 让批处理被wsh解析的代码
- Nodejs如何搭建Web服务器
- 谈谈Tempdb对SQL Server性能优化有何影响
- 通过sql存储过程发送邮件的方法
- jQuery Easyui实现左右布局
- javascript数组常用方法汇总
- Java中String、StringBuffer、StringBuilder的区别介绍
- 深入理解C/C++混合编程
- 详解iOS的数据存储
- C++编写简易的飞机大战
- 如何通过函数指针调用函数(实现代码)