Usercase : 사이트의 사용자 기간을 추적해야합니다. 이것은 (end datetime - start datetime)으로 계산됩니다. 사용자가 로그 아웃을 클릭하면 제대로 작동합니다. 시스템은 종료 날짜 시간을 기록 할 수 있습니다. 그러나 가장자리 경우에 문제가 있습니다 : 사용자 세션이 종료 됨 - 사용자의 인터넷 연결이 끊어 졌거나 브라우저가 닫히거나 시스템이 다운 된 경우 등으로 종료됩니다. 이러한 경우 시스템에서 종료 시간을 어떻게 알 수 있습니까? 최종 datetime은 실제 datetime에 최대한 가깝게 계산해야합니다. 이것이 가능하지 않다면 최대 5 분까지는 정확합니다.PHP - 깨진 세션 종료 datetime을 감지하는 방법?
내가 볼 수있는 한 가지 가능한 방법은 클라이언트 시스템을 핑 (ping)하여 활성 상태인지 확인하는 것입니다. 하지만 원하지 않는 대역폭을 추가하기 때문에이 작업을 수행하고 싶지 않습니다. 그렇다면 가장자리 정보를 얻는 다른 방법은 없습니까?
가장 쉬운 방법은 때마다 사용자가 페이지를 요청 데이터베이스에 작업 시간 필드를 증가하는 것입니다. 또는 자체가 엉망인 사용자 지정 세션 처리기. –
페이지 요청은 뉴스 피드와 같은 페이지가 하루 종일 열려 있기 때문에 도움이되지 않지만 활동 시간에 세션 시간 초과를 추가하지 않기를 바랍니다. 따라서 시간의 삭감은 정확하지 않을 것입니다. – SeanD