PHP 쿠키를 삭제할 수 없는 문제에 대한 해결책: 먼저 PHP 샘플 파일을 만든 다음 setcookie를 통해 쿠키를 만듭니다. 마지막으로 이 쿠키의 유효 기간을 현재 시간 이전의 시간으로 설정하여 생성된 쿠키를 지웁니다.
이 튜토리얼의 운영 환경: 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!