>  기사  >  백엔드 개발  >  PHP가 페이지 체류 시간을 기록하는 방법의 예

PHP가 페이지 체류 시간을 기록하는 방법의 예

*文
*文원래의
2017-12-29 18:59:581453검색

이 글에서는 주로 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 시간 형식 매개변수

php 타임스탬프

위 내용은 PHP가 페이지 체류 시간을 기록하는 방법의 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.