ホームページ >バックエンド開発 >PHPの問題 >PHPでCookieをクリアする方法

PHPでCookieをクリアする方法

藏色散人
藏色散人オリジナル
2020-11-16 09:27:242976ブラウズ

PHP で Cookie をクリアする方法: まず setcookie を通じて Cookie を作成し、次に「setcookie('test',time() - 3600);」メソッドを使用して作成された Cookie をクリアします。

PHPでCookieをクリアする方法

推奨: 「PHP ビデオ チュートリアル

PHP クリア COOKIE? PHPはCOOKIEを削除できませんか? COOKIE の有効期間を設定する

PHP は HTTP Cookie を透過的にサポートしています。Cookie はリモート ブラウザ側にデータを保存し、ユーザーの追跡と識別に使用するメカニズムです。

setcookie() または setrawcookie() 関数を使用して Cookie を設定できます。Cookie は HTTP ヘッダーの一部であるため、

他の情報が出力される前に setcookie() 関数を呼び出す必要がありますこれは header() 関数の制限と同様です。

setcookie();

Cookie を削除する方法は、この Cookie の有効期間を現在時刻より前に設定することです。

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

$_COOKIE だけでなく、$_COOKIE 配列が空であることがわかります。 ['test'] は空なので、winsock はパケットをキャプチャし、返された

http ヘッダーを観察しました。それは次のようになりました: set-cookie:test=deleted;expires=Mon, 29-May -2014 10:22:15 GMT

ログイン:

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

終了:

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

IE では終了時に問題がないことがわかりましたが、テストしたところFirefox では正常にログインして終了できない IE と Firefox を確認 テストした結果、setcookie() の 4 番目のパラメータ (正当なパスパラメータ) が指定されていないことがわかり、ログイン時と終了時に設定される Cookie のパスが異なっていました。 (Firefoxの方が厳密で、その結果、各種変数が再構築されました)

IEでは終了時に問題なかったのですが、Firefoxでテストすると正常にログインして終了できないことが分かりました。 IE と Firefox の Cookie レコードの違いとテスト後

setcookie() の 4 番目のパラメーター (正当なパス パラメーター) が指定されていないことがわかり、ログイン時と終了時に Cookie のパスが設定されました。は異なりました (Firefox はより厳密で、各変数が再構築されます)

例:

$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でCookieをクリアする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。