BackEND/PHP

PHP기본 - 쿠키에 대하여

smartlittlepuppy 2023. 5. 28. 20:04
반응형

1. 30일동안 쿠키를 설정한다. 

 setcookie(
    "cookie",
    "heart",
    time() + (86400 * 30),
    '/',
    false,
    0
  );

"cookie": 설정할 쿠키의 이름입니다.

 "heart": 쿠키의 값입니다. 이 경우에는 "heart"라는 문자열을 저장하고 있습니다.

time() + (86400 * 30): 쿠키의 만료 시간을 설정하는 부분입니다. time()은 현재 시간을 반환하는 함수이며, 여기에 30일에 해당하는 초(86400 * 30)를 더하여 쿠키의 만료 시간을 설정합니다.

'/': 쿠키의 경로를 설정하는 부분입니다. '/'는 사이트 전체에서 쿠키를 사용할 수 있도록 설정하는 것을 의미합니다.

false: 쿠키의 보안 속성을 설정하는 부분입니다. 이 경우에는 보안 속성을 비활성화하고 있습니다.

0: 쿠키의 도메인을 설정하는 부분입니다. 0은 현재 도메인에 대한 쿠키를 설정함을 의미합니다.

 

따라서, "cookie"이라는 이름으로 "heart"라는 값을 가진 쿠키를 현재 시간부터 30일 동안 보관하며, 사이트 전체에서 접근 가능하도록 설정되어 있습니다. 보안 속성은 비활성화되어 있고, 도메인은 현재 도메인에 대한 쿠키를 설정하고 있습니다.

 

  echo $_COOKIE['cookie'];
 

PHP에서 $_COOKIE 전역 변수를 사용하여 "cookie"이라는 이름의 쿠키의 값을 출력하는 것입니다. $_COOKIE['cookie']은 "cookie"이라는 이름의 쿠키의 값을 가져오는 것을 의미합니다. 해당 쿠키가 설정되어 있다면, 그 값을 출력하게 됩니다. 따라서, echo $_COOKIE['cookie'];은 "cookie"이라는 이름의 쿠키의 값을 출력하는 코드입니다. 

 

2. 쿠키를 1시간동안만 저장한다.

  setcookie("test_cookie", "test", time() + 3600, '/');
 

"test_cookie": 설정할 쿠키의 이름입니다. 

"test": 쿠키의 값입니다. 이 경우에는 "test"라는 문자열을 저장하고 있습니다. 

time() + 3600: 쿠키의 만료 시간을 설정하는 부분입니다. time() + 3600은 현재 시간에 3600초(1시간)를 더하여 쿠키를 1시간 동안 유지하도록 설정합니다. 

'/': 쿠키의 경로를 설정하는 부분입니다. '/'는 사이트 전체에서 해당 쿠키를 사용할 수 있도록 설정하는 것을 의미합니다. 

 

 "test_cookie"라는 이름으로 "test"라는 값을 가진 쿠키를 1시간 동안 유지하며, 사이트 전체에서 접근 가능하도록 설정되어 있습니다.

 

3. 쿠키를 삭제한다. 

setcookie("cookie", "", time()-3600, "/", false,0);

"cookie": 삭제할 쿠키의 이름입니다.

"": 쿠키의 값입니다. 삭제할 쿠키이므로 값이 필요하지 않으므로 빈 문자열로 설정됩니다.

time()-3600: 쿠키의 만료 시간을 설정하는 부분입니다. time()-3600은 현재 시간에서 3600초(1시간)를 빼서 쿠키를 즉시 만료시킵니다.

'/': 쿠키의 경로를 설정하는 부분입니다. '/'는 사이트 전체에서 해당 쿠키를 삭제할 수 있도록 설정하는 것을 의미합니다. false: 쿠키의 보안 속성을 설정하는 부분입니다. 이 경우에는 보안 속성을 비활성화하고 있습니다.

0: 쿠키의 도메인을 설정하는 부분입니다. 0은 현재 도메인에 대한 쿠키를 설정함을 의미합니다.

 

따라서,  "cookie"라는 이름의 쿠키를 즉시 만료시키고, 쿠키의 값은 비웁니다. 경로는 사이트 전체이며, 보안 속성은 비활성화되고, 현재 도메인에 대한 쿠키를 설정합니다. 이를 통해 "cookie" 쿠키를 삭제할 수 있습니다.

 

 

반응형

'BackEND > PHP' 카테고리의 다른 글

json_encode() : PHP의 데이터 구조를 JSON 문자열로 변환  (0) 2023.07.01
PHP기본-세션에 대하여  (0) 2023.05.28
PHP 함수와 클래스예제  (0) 2023.05.22
PHP기본-Syntax모음  (0) 2023.05.22
VSCODE extension설치  (0) 2023.05.17