PHP で特定のドメインの Cookie をすべて削除するにはどうすればよいですか?
ユーザーが Web サイトからログアウトするとき、多くの場合、次のことが望ましいです。その Web サイトに関連付けられているすべての Cookie を削除します。残念ながら、setcookie() 関数を使用して Cookie を false に設定することは、この目的には効果的ではありません。
解決策: PHP setcookie() を使用する
すべてを削除するには特定のドメインに関連付けられた Cookie を使用するには、次の PHP コードを使用します。
<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>
このコードは、現在のリクエストの HTTP Cookie を取得し、それらを個別のキーと値のペアに分割し、キーごとに値を空の文字列に設定し、time()-1000 を使用して Cookie を期限切れにします。さらに、Cookie のパスを「/」に設定し、ドメイン上のすべてのパスに確実に影響を与えます。
以上がPHP で特定のドメインに関連付けられたすべての Cookie を削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。