当前位置:首页 > PHP教程 > php应用 > 列表

PHP记录页面停留时间的方法

发布:smiling 来源: PHP粉丝网  添加日期:2021-07-24 08:11:52 浏览: 评论:0 

这篇文章主要介绍了PHP记录页面停留时间的方法,涉及PHP结合js针对文件与时间的相关操作技巧,需要的朋友可以参考下。

本文实例讲述了PHP记录页面停留时间的方法,分享给大家供大家参考,具体如下:

首先在要监控的页面添加JS如下

  1. <script> 
  2. var dt1 = new Date(); 
  3. window.onbeforeunload = function(){ 
  4.   var dt2 = new Date(); 
  5.   var ms = dt2.getTime() - dt1.getTime(); 
  6.   var img = new Image(); 
  7.   img.src = 'log.php?stay_ms=' + ms; 
  8. } 
  9. </script> 

log.php 代码如下

  1. <?php 
  2. $refer = ''; 
  3. if (isset($_SERVER['HTTP_REFERER'])) 
  4. { 
  5.   $refer = $_SERVER['HTTP_REFERER']; 
  6. } 
  7. $user_agent = ''; 
  8. if (isset($_SERVER['HTTP_USER_AGENT'])) 
  9. { 
  10.   $user_agent = $_SERVER['HTTP_USER_AGENT']; 
  11. } 
  12. $ip = $_SERVER['REMOTE_ADDR']; 
  13. if (isset($_GET['stay_ms'])) 
  14. { 
  15.   $log = '[' . date("Y-m-d H:i:s") . '] ' . $ip . ' ' . $refer . ' @ ' . number_format($_GET['stay_ms']) . "ms\r\n"; 
  16.   file_put_contents("log/log_" . date("Y-m-d") . ".txt", $log, FILE_APPEND); 
  17. } 
  18. if ($_SERVER['QUERY_STRING'] == '' || isset($_GET['day'])) 
  19. { 
  20.   $day = isset($_GET['day']) ? $_GET['day'] : date("Y-m-d"); 
  21.   $file = "log/log_" .$day . ".txt"; 
  22.   if (file_exists($file)) 
  23.   { 
  24.     $log = file_get_contents($file); 
  25.     echo nl2br($log); 
  26.   } 
  27. }

Tags: PHP记录页面停留时间

分享到: