ホームページ >バックエンド開発 >PHPチュートリアル >PHPで訪問者がページに滞在している時間をタイムリーに観察する方法
このエビ〜
ユーザーのページを閉じる、またはページから離れるというアクションを監視する機能はありますか?
これはクライアントの問題です
JS と結合された PHP をオンラインで見つけました
<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>
$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); } }