Session Session 사용 및 관리 방법을 안내합니다.
사용 준비
Session을 사용하기 위해선 아래와 같이 Controller 최상단에 use 가 선언 되어야 합니다.
Controller
/app/test.php
<?php use Corelib\Session;
Session 시작
세션은 zigger에서 항상 활성화되어 있습니다.Controller 상단에 use 를 선언하는 것 만으로도 세션을 사용할 준비가 완료됩니다.
zigger에서 생성되는 세션은 File이 아닌, Database에 기록되어 관리됩니다.
새로운 Session 생성
세션은 아래 예시와 같이 생성할 수 있습니다.
Controller
/app/test.php
<?php use Corelib\Session; ... Session::set_sess('name', $val);
인자값 | 설명 |
---|---|
name | 생성할 세션명 입력 |
$val | 기록할 세션 내용 입력 |
Session 읽기
생성된 세션은 아래 예시와 같이 읽을 수 있습니다.
Controller
/app/test.php
<?php use Corelib\Session; ... $sess_name = Session::sess('name'); if ($sess_name != 'Foo') { ... }
인자값 | 설명 |
---|---|
name | 세션명 입력 |
Session 존재 여부 확인
세션이 이미 생성되어 있는지 검사합니다.세션이 생성되어 있지 않다면 false를 반환합니다.
Controller
/app/test.php
<?php use Corelib\Session; ... $is_session = Session::is_sess('name'); if ($is_session !== true) { ... }
인자값 | 설명 |
---|---|
name | 세션명 입력 |
Session 비우기
이미 생성되어 있는 세션의 내용을 비울 수(null) 있습니다.세션을 비우는 방법은 아래 예시를 참고합니다.
Controller
/app/test.php
<?php use Corelib\Session; ... Session::empty_sess('name');
인자값 | 설명 |
---|---|
name | 세션명 입력 |
모든 Session 파기
이미 생성되어 있는 모든 세션을 다시 사용할 수 없도록 파기합니다.
Controller
/app/test.php
<?php use Corelib\Session; ... Session::drop_sess();
인자값 | 설명 |
---|---|
name | 세션명 입력 |
Session 수명 주기 설정
zigger의 기본 세션 수명은 24시간(86400초)으로 설정되어 있습니다.수명 주기는 아래와 같이 /lib/config.set.php 에서 변경 가능합니다.
Controller
/lib/config.set.php
... define('SET_SESS_LIFE', 86400); //세션 유지 시간 (초 단위) ...
파일 Session 방식으로 변경
zigger는 기본적으로 DB 세션 방식을 채택하고 있습니다. DB서버 성능 저하로 인해 파일 세션 방식으로 변경 하려는 경우아래와 같이 /lib/config.set.php 에서 활성화 및 세션 파일 경로 설정이 가능합니다.
Controller
/lib/config.set.php
... define('PH_SESSION_FILE_PATH', PH_PATH.'/data/sessions'); //파일세션 생성 경로 ... define('SET_SESS_FILE', false); //파일세션 사용 여부 (true: 파일세션, false: DB세션) ...
연관 가이드 바로가기
config.set.php 파일 더 살펴보기