php
PHP 세션 만료, Php session timeout, Php 세션 타임아웃
마샤와 곰
2020. 9. 14. 12:57
세션과 관련된 내용을 자바나 Node.js로만 하다가 간만에 php로 구현해야 되는 경우가 있었습니다.
php에서는 타임설정을 하는 기능은 따로 없어보이며, 시간값을 세션에 넣어주고 나서 계산해야 되는 방식인 것 같습니다.
로그인이 성공되면 아래 코드처럼 시간값을 기록합니다.
<?
if(로그인 성공){
$_SESSION["auth"] = "super";
$_SESSION['login_time_stamp'] = time();
}
?>
그리고나서 include를 통해서 세션이 살아있는지 확인하는 기능을 붙여 줍니다.
<?php
if( !empty($_SESSION["auth"])){
if (time()-$_SESSION["login_time_stamp"] > 60 * 30) { //로그인 지속시간(분단위, 30분)
unset($_SESSION["auth"]);
session_unset();
session_destroy();
} else {
$_SESSION['login_time_stamp'] = time();
}
}
?>
시간값을 편리하게 분(min)단위로 할수 있어서 그렇게 어렵지는 않았습니다.
반응형