웹모아
웹모아[손님] 검색   로그인 / 회원가입    


 
환경설정
 


PHP에서 세션 사용하기
  2007-07-14 21:38:02 댓글:(0)   조회:1386




1.session_unset()

현재 연결된 세션에 등록되어 있는 모든 변수의 값을 삭제한다.

session_unregister() 함수는 지정한 하나의 변수 자체를 완전히 삭제하는데 반해

session_unset() 함수는 세션 변수 자체를 삭제하는 것이 아니라 세션 변수에 저장되어 있던 값을 삭제한다.

그리고 하나의 세션 변수가 아닌 현재 세션에 등록되어 있는 모든 변수의 값을 삭제한다.

 

2.session_is_registered(세션변수)

세션 변수가 현재의 세션에 등록되어 있는지를 조사하여 존재하면 true, 존재하지 않으면 false를 반환한다.

 

3.session_save_path([경로])

세션 데이터 파일이 저장되는 디렉토리 경로를 반환하거나 지정한 디렉토리로 변경한다.

 

1)인자 없이 호출시 : 현재 세션 저장 디렉토리를 반환

$path=session_save_path()              C:/APM_Setup/phptemp

 

2)함수의 인자로 특정 경로 지정 : 세션 저장 디렉토리를 지정 경로로 변경

session_save_path("C:/APM_Setup");  
session_start();           //session_save_path() 함수는 session_start() 함수 호출 전에 호출해야 한다. 


 

4.session_name([세션변수])

현재의 세션 이름을 반환하거나 지정한 이름으로 변경한다.

인자없이 호출 했을 경우는 현재 세션의 이름을 반환하며 인자를 지정할 경우는

현재 세션을 지정한 값으로 변경하고 변경되기 전의 세션 이름을 결과로 반환한다.


echo session_name("JCA3001");          // 변경전 세션명 반환  PHPSESSID
echo session_name();                         // 현재 세션명 반환  JCA3001

 

 

5.session_id([변경할 아이디])

현재 세션 아이디를 반환하거나 지정한 값으로 변경한다.

인자 없이 호출할 경우는 현재의 세션 아이디를 그 결과로 반환하며

인자 지정시 현재의 세션 아이디를 지정한 인자값으로 변경한다.

$PHPSESSID로도 현재의 세션 아이디를 출력할 수 있다.

session_id()는 서버 측의 세션 id이며, $PHPSESSID는 클라이언트 측의 세션 id이다.

 

 

6.session_module_name()

현재 세션 데이터를 저장하는 방식에 관한 정보를 반환한다.

 

세션 데이터를 서버에 저장하는 방법

1) files : 세션 아이디를 그 이름으로 갖는 세션 데이터 파일에 저장

2) mm : 서버의 메모리 상에 저장

3) user : 세션을 다루는 방법을 사용자가 직접 정의하도록 함

 

7.session_get_cookie_params()

세션 쿠키와 관련된 정보를 배열의 형태로 반환한다.

 

8.session_set_cookie_params( lifetime, path, domain )

세션 쿠키를 발급할 때 필요한 인자를 설정한다.

 

9.session_encode()

현재 세션에 저장되어 있는 데이터를 보여준다.

한번에 여러 개의 쿠키를 도메인에 저장하기 위한 기술로

하나의 긴 문자열 안에 모든 데이터를 압축해서 넣는 방식이다.

하나의 쿠키에 여러 문자를 저장할 수 있으므로 편리하다.

 

session_start();
$_SESSION["name"]="kangsoo";
$_SESSION["book"]="위대한 개츠비";
$_SESSION["email"]= "soojeong.sarang";

$encoded_string=session_encode();

print "압축된 문자열은 $encoded_string이다.";

 

결과:

압축된 문자열은 name|s:7:"kangsoo";book|s:6:"위대한 개츠비";email|s:15:"soojeong.sarang";이다.

 

10.session_decode(데이터)

함수의 인자로 전달한 세션 데이터를 디코딩한다.

session_encode() 함수로 한 세션 데이터 압축을 해제한다.

 

11.session_cache_limiter([캐시허용수준])

현재 cache limiter 항목의 값으로 설정되어 있는 이름을 반환하거나 지정한 이름으로 변경한다.

cache limiter는 사용자가 요청한 웹페이지의 내용을 사용자의 시스템에 캐시로 남길 수 있는 허용 수준을 조절하는 항목이다.

 

PHP 환경설정 파일의 cache limiter의 단계

1)nocache : 사용자의 시스템에는 요청한 페이지가 절대로 캐시로 보관되지 않는다.   //기본값

2)private : 사용자가 요청한 페이지를 사용자의 시스템에 남기는 것을 엄격하게 허용하지만 public 보다 엄격하다.

3)public : 사용자가 요청한 페이지를 사용자의 시스템에 남기는 것을 허용한다.

 

echo session_cache_limiter();         //기본값인 nocache 출력
session_cache_limiter("private");

echo session_cache_limiter();         //새로 설정한 private 출력

 

tip)

session 설정을 해준 후

폼양식을 입력하고 전송했을 때, [뒤로] 버튼을 누르면 입력한 값들이 모두 사라져 버린다.

이를 해결하기 위해서는 함수의 인자를 지정하지 않고 session_cache_limiter("") 로 설정함으로써

문제를 해결할 수 있다.

 

12.session_set_save_handler(함수명1, 함수명2 ...)

세션을 다룰 수 있는 사용자 정의 함수를 구현한다.

PHP의 세션 핸들링을 user로 한 경우에 사용한다.





 댓글 (0)


환경설정
페이지: 1 / 2   


   PHP.INI에서의 세션 관련 설정4305
   [PHP] $_SERVER3471
   php 에서 세션시간설정1343
   업로드 용량과 관련한 php.ini 파일 설정1294
   mbstring - PHP 확장모듈을 추가하는 방법1339
     [RE] mbstring - PHP 확장모듈을 추가1463
   타도메인간 쿠키 공유하기1714
   home 데이타 백업 스크립트1287
   cron 이용 일정시간마다 php문실행2106
   cron, crontab, PHP 소스 자동실행, 1575
   crontab 에서 php 파일 실행이 가능한지요?1406
   crontab php 스크립트 실행문제입니다.(1) 1292
   2차 도메인과의 세션고유1517
   POST로 값을 넘길때, 만료된 페이지입니다 문제의(홈마스타)3100
   세션(로그인)시간 무한대로 늘리기 초간단 초보용(홈마스타)(2) 1399
   php mysql 세션 관리(홈마스타)2648
   세션을 DB로 관리하기 + 쪽지 확인하기(홈마스타)(1) 1598
   브라우져를 종료해도 세션이 그대로 살아있어요(홈마스타)2456
PHP에서 세션 사용하기(홈마스타)1387
   [설치/설정] PHP 파일업로드시 일정용량 이상 업(홈마스타)1261
   php.ini 값 설정가능한 범위 알아보기(홈마스타)1529
   PHP 슈퍼전역변수 들의 종류(홈마스타)19431
   쿠키공유를 위한 헤드값(홈마스타)1402
   php.ini 설정하기(홈마스타)1414
   php.ini (V4.2.3) - III(홈마스타)1386
   php.ini (V4.2.3) - II(홈마스타)1427
   환경을 실행중에 임시로 바꾸기(홈마스타)1283
   php.ini (V4.2.3)(홈마스타)1479
   error_reporting(홈마스타)1782
   경과만료 페이지 없애기(홈마스타)1624
≪ [1]  [2]   ≫

복수단어 검색은 공백(space)로 구분해 주세요.



 
최근 글
[손님]
9
10
153
162
322
515
1287
468
541
298
459
4057
977
1082
1320
 
인기 글
[손님]
6723
5452
6982
9033
6029
5735
5136
5913
10535
4711
[홈마스타] 운전면허 취득절차
10954
5674
5203
15455
5733