首頁  >  文章  >  後端開發  >  php 記錄頁面停留時間的方法代碼實例

php 記錄頁面停留時間的方法代碼實例

怪我咯
怪我咯原創
2017-07-14 10:57:162362瀏覽

有的時候我們做程式開發的時候,想知道使用者在網站頁面瀏覽了多久,那麼該怎麼實現這個功能呢? 這篇文章主要介紹了PHP記錄頁面停留時間的方法,涉及PHP結合js針對文件與時間的相關操作技巧,需要的朋友可以參考下,具體如下:

首先在要監控的頁面中加入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 = &#39;log.php?stay_ms=&#39; + ms;
}
</script>

log.php 程式碼如下

<?php
$refer = &#39;&#39;;
if (isset($_SERVER[&#39;HTTP_REFERER&#39;]))
{
  $refer = $_SERVER[&#39;HTTP_REFERER&#39;];
}
$user_agent = &#39;&#39;;
if (isset($_SERVER[&#39;HTTP_USER_AGENT&#39;]))
{
  $user_agent = $_SERVER[&#39;HTTP_USER_AGENT&#39;];
}
$ip = $_SERVER[&#39;REMOTE_ADDR&#39;];
if (isset($_GET[&#39;stay_ms&#39;]))
{
  $log = &#39;[&#39; . date("Y-m-d H:i:s") . &#39;] &#39; . $ip . &#39; &#39; . $refer . &#39; @ &#39; . number_format($_GET[&#39;stay_ms&#39;]) . "ms\r\n";
  file_put_contents("log/log_" . date("Y-m-d") . ".txt", $log, FILE_APPEND);
}
if ($_SERVER[&#39;QUERY_STRING&#39;] == &#39;&#39; || isset($_GET[&#39;day&#39;]))
{
  $day = isset($_GET[&#39;day&#39;]) ? $_GET[&#39;day&#39;] : date("Y-m-d");
  $file = "log/log_" .$day . ".txt";
  if (file_exists($file))
  {
    $log = file_get_contents($file);
    echo nl2br($log);
  }
}

以上是php 記錄頁面停留時間的方法代碼實例的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn