Programming/PHP

[PHP] 쿠키 기본 이해 (cookie)

DOTI 2015. 9. 23. 09:42
[PHP] 쿠키 기본 이해 (cookie)
반응형

쿠키는 생성, 변경, 삭제 모두 setcookie() 함수로 정의하여 사용할 수 있다


쿠키 생성


[사용방법]

setcookie(변수이름, 값, 유효시간, 디렉토리, 도메일, 보안)
cs

- 변수이름(Variable) : 쿠키의 변수 이름을 의미하며, 되도록 영문, 숫자, 하이픈(_) 사용

- 값(Value) : 변수 이름 안에 들어갈 값, 값제거시 공백 사용

- 유효시간(Expire time) : 쿠키가 생성된 후 언제까지 적용될지의 유효시간, 0 또는 공백이면 브라우저가 닫힐때까지 유효하며, 1은 쿠키가 삭제되기전까지 영원히 지속됨, 얼마간 지속의 경우 time() 함수를 함께 사용하여 time()+60 과 같은 방식으로 사용, 하루동안 지속시간 유지를 위해서는 time()+(60*60*24) 를 지정

- 디렉토리(Directory) : 쿠키가 작동하게될 디렉토리를 절대경로로 지정, 공백일 경우 쿠키 생성된 디렉토리 및 하위 디렉토리에서 작동함 (보통 생략)

- 도메인(Domain) : 작동할 도메인을 지정. www.test.com 과 m.test.com 을 모두 작동하게 하려면 .test.com 과 같은 방식으로 지정 (보통 생략)

- 보안(Secure) : 쿠키의 보안 상태 지정. 1은 SSL 암호화가 되어야 작동, 0은 보안을 무시 (보통 생략)



[예제]

1
2
3
4
5
6
7
8
<?
setcookie("test1""123");
setcookie("test2""abc"1);
setcookie("test3"$ex_val1);
setcookie("test4"$ex_val2time()+60"/httpd/html/");
setcookie("test5""abc123"1"/"".test.com");
setcookie("test6");
?>
cs


setcookie("test1""123")

 - test1 라는 변수에 123 값을 지정, 브라우저를 닫으면 사라짐


setcookie("test2""abc"1)

 - test2 라는 변수에 abc 값을 지정, 브라우저를 닫아도 값이 지속됨


setcookie("test3"$ex_val1)

 - test3 라는 변수에 $ex_val1의 값을 지정, 브라우저를 닫으면 사라짐


setcookie("test4"$ex_val2time()+60"/httpd/html/") 

 - test4 라는 변수에 $ex_val2의 값을 지정, 지금부터 60초 후에 사라지며 /httpd/html/ 이하 데릭토리에서 작동


setcookie("test5""abc123"1"/"".test.com") 

 - test5 라는 변수에 abc123 값을 지정, 브라우저를 닫아도 값은 지속되며 루트(/) 이하 디렉토리, test.com의 모든 서브 도메인에서 동작


setcookie("test6")

 - test6 라는 변수의 값을 삭제합니다




쿠키 사용

[예제]

1
2
3
<?
echo $_COOKIE['test1']
?>
cs


echo 명령을 통해 test1 쿠키에 입력된 값을 화면에 출력합니다





[참고]

http://www.w3schools.com/php/php_cookies.asp


반응형