>백엔드 개발 >PHP 문제 >PHP 쿠키를 삭제할 수 없으면 어떻게 해야 하나요?

PHP 쿠키를 삭제할 수 없으면 어떻게 해야 하나요?

藏色散人
藏色散人원래의
2021-02-25 17:55:321860검색

PHP 쿠키를 삭제할 수 없는 문제에 대한 해결책: 먼저 PHP 샘플 파일을 만든 다음 setcookie를 통해 쿠키를 만듭니다. 마지막으로 이 쿠키의 유효 기간을 현재 시간 이전의 시간으로 설정하여 생성된 쿠키를 지웁니다.

PHP 쿠키를 삭제할 수 없으면 어떻게 해야 하나요?

이 튜토리얼의 운영 환경: Windows 7 시스템, PHP 버전 7.1, DELL G3 컴퓨터

PHP는 COOKIE를 삭제할 수 없나요? 쿠키 유효 기간 설정

PHP는 HTTP 쿠키를 투명하게 지원합니다. 쿠키는 원격 브라우저 측에 데이터를 저장하고 이를 사용하여 사용자를 추적하고 식별하는 메커니즘입니다. 쿠키는 setcookie() 또는 setrawcookie() 함수를 사용하여 설정할 수 있습니다. 쿠키는 HTTP 헤더의 일부이므로 다른 정보가 브라우저에 출력되기 전에 setcookie() 함수를 호출해야 하며 이는 헤더에 대한 제한 사항과 유사합니다. () 기능.

setcookie();

쿠키를 삭제하는 방법은 이 쿠키의 유효 기간을 현재 시간 이전으로 설정하는 것입니다

setcookie('test', 'true', time() + 300); // 创建 cookie
//setcookie('test',time() - 3600 );  // 清除建立的 cookie
//setcookie('test'); //只是将 $_COOKIE['test'] 的值清空
如果直接setcookie('test', '');
echo '';
print_r($_COOKIE); //attay();

$_COOKIE['test']가 비어 있는 것이 아니라 $_COOKIE 배열도 비어 있다는 것을 알 수 있습니다. Winsock은 패킷을 캡처하고 반환을 관찰합니다. http 헤더는 다음과 같습니다.

set-cookie:test=deleted; expires=Mon, 29-May-2014 10:22:15 GMT

Login:

setcookie('username', 'zhangsan', time()+1000, "/php100");

Exit:

setcookie('username', '', time()-3600);

종료 시 IE에는 문제가 없지만 Firefox에서 테스트하면 로그인이 정상입니다. IE와 Firefox에서 쿠키 기록을 확인하면 됩니다. 차이점, 테스트 결과 setcookie()의 4번째 매개변수(법적 경로 매개변수)가 지정되지 않아 로그인 및 종료 시 설정된 쿠키의 경로가 다른 것으로 확인되었습니다. (Firefox는 더 엄격하여 다양한 변수를 재구성합니다.) [추천 학습: "PHP Video Tutorial"]

예:

$value = 'something';
setcookie('TestCookie', $value, time() + 3600);
setcookie('mytest', $value, time() + 3600, "~rasmus", ".maoge.com", 1);
if (isset($_COOKIE['TestCookie']))
{
echo 'TestCookie :' . $_COOKIE['TestCookie'];
}

위 내용은 PHP 쿠키를 삭제할 수 없으면 어떻게 해야 하나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.