사용자가 로그아웃할 때 모든 웹사이트 쿠키를 삭제하려고 시도하는 동안 다음 코드에 문제가 발생했습니다.
<code class="php">setcookie("user",false);</code>
이 코드는 효과적이지 않은 것 같습니다. 특정 도메인에서 쿠키를 제거하는 대체 접근 방식을 살펴보겠습니다.
PHP setcookie() 함수는 쿠키를 설정하고 지우는 수단을 제공합니다. 쿠키를 삭제하려면 해당 값을 빈 문자열로 설정하고 만료 시간을 과거 날짜로 설정할 수 있습니다.
<code class="php">setcookie("name", "", time() - 3600);</code>
이 접근 방식을 구현하여 삭제 도메인과 관련된 모든 쿠키에는 대체 경로가 필요합니다. PHP의 setcookie() 함수는 여러 쿠키를 동시에 제거하는 기능을 제공하지 않습니다. 그러나 $_SERVER['HTTP_COOKIE'] 변수를 활용하면 기존 쿠키를 열거하고 개별적으로 삭제할 수 있습니다.
<code class="php">// unset cookies if (isset($_SERVER['HTTP_COOKIE'])) { $cookies = explode(';', $_SERVER['HTTP_COOKIE']); foreach($cookies as $cookie) { $parts = explode('=', $cookie); $name = trim($parts[0]); setcookie($name, '', time()-1000); setcookie($name, '', time()-1000, '/'); } }</code>
쿠키를 반복하고 경로 및 만료 값을 모두 빈 문자열로 설정하면 현재 도메인과 관련된 모든 쿠키를 효과적으로 제거할 수 있습니다.
위 내용은 PHP에서 귀하의 웹사이트와 관련된 모든 쿠키를 효율적으로 삭제하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!