php 쿠키 설정
Language/PHP 2011. 1. 13. 11:511.쿠키 설정 함수
쿠키설정 함수는 브라우저에 어떠한 출력이 되기전에 호출해야 합니다.
(http 헤더에 포함되기 때문)
1.1 setcookie()
bool setcookie(string name [, string value [, int expire [, string path [,string domain[, bool secure]]]]])
$id=testId
$lifetime = 60*60*24*30;
// 60초(1분)*60 = 1시간
// 60*60*24= 하루
// 60*60*24*30 = 30일
$ckName='.test.co.kr'
예) setcookie( "user_id" , $id , $lifetime , '/', $ckName);
1.2 setrawcookie()
bool setrawcookie ( string name [, string value [, int expire [, string path [, string domain [, int secure]]]]])
- php5에서 사용가능
- setcookie()와 거의 동일하나 urlencoded가 자동적으로 이루어 되지 않는다
인자 |
의미 |
name |
쿠키 이름 |
value |
클라이언트에 저장할 데이터 |
expire |
쿠키만료시간(GMT 사용) 지정하지 않으면 브로우저가 닫힐 때 만료 time(),mktime() 함수를 사용하여 시간 설정 |
path |
쿠키의 유효 경로 통상 /(루트)로 설정한다. |
domain |
쿠키의 유효 도메인 |
secure |
0:비보안 1:보안 연결 |
1.3 return 값
정상적으로 전송되었으면 TRUE 반환
아니면 FALSE 리턴
2.클라이언트에서 전송된 쿠키 참조
$_COOKIE[name]; è 자동전역배열
$_REQUEST
클라이언트로부터 전송된 쿠키 데이터는 register_globals와 variables_order 환경 설정 변수에 의존하여 자동적으로 PHP 변수로 변환됩니다.
하나의 쿠키 이름에 여러 변수를 지정하고 싶을 때는, 단순히 쿠키 이름에 []를 추가하면 됩니다.
3.예제
3.1 쿠키의 설정
<?php $value = 'lynx';
//expire 지정하지 않으면, 쿠키는 세션 종료시(브라우저를 닫을 때)에 만료 setcookie("user", $value); //setcookie("user", $value,time()+3600); /* 1시간 뒤에 만료 */ //setcookie("user", $value,time()+3600, "/", ".example.com", 1); ?> |
3.2 쿠키값 읽기
<?php echo $_COOKIE["user"]; print_r($_COOKIE); //쿠키에 설정된 값 write ?> |
<?php // 쿠키를 설정 setcookie("cookie[three]", "cookiethree"); setcookie("cookie[two]", "cookietwo"); setcookie("cookie[one]", "cookieone"); ?> |
3.3 쿠키와 배열
<?php // 쿠키를 읽기 // 페이지가 리로드된 뒤에, 출력 if (isset($_COOKIE['cookie'])) { foreach ($_COOKIE['cookie'] as $name => $value) { echo "$name : $value <br />\n"; } } ?> |
출력은
three : cookiethree two : cookietwo one : cookieone |
3.4 쿠키 삭제
<?php // 만료 날짜를 한시간전으로 설정 setcookie ("TestCookie", "", time() - 3600); ?> |
'Language > PHP' 카테고리의 다른 글
세션 상세 (0) | 2011.01.13 |
---|---|
세션 설정, php.ini (0) | 2011.01.13 |
parse_url (0) | 2011.01.06 |
array_merge (0) | 2010.12.14 |
array_pop (0) | 2010.12.14 |