php 쿠키 설정

Language/PHP 2011. 1. 13. 11:51

1.쿠키 설정 함수

쿠키설정 함수는 브라우저에 어떠한 출력이 되기전에 호출해야 합니다.

(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);

?>

 

 

 

 

 

[출처] php 쿠키|작성자 시라소니

'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
: