PHPでブラウザのcookieが有効か無効か調べる

ホーム >> PHPでブラウザのcookieが有効か無効か調べる
check_cookie()関数の仕組み
cookieを使う場合、使えるブラウザなのかどうか調べる必要が出てくる場合もあります。 cookieは、setcookie()関数で書き込みますが、戻り値では、cookieが書き込めたのかどうかは分かりません。
そこで、check_cookie()関数をつくってみました。
まず、basename($_SERVER['SCRIPT_NAME'])で、関数で自分自身のURLを取得し、cookieをセット。
自分自身の取得したURLに?do=checkをつけて移ります。
$_GET['do']で分岐してきたのを、cookieがあるかどうかチェック。
Cookieが有効ならTRUE、無効ならFALSE。
cookieを削除。
この関数を使えばブラウザでcookieが有効なのか、無効なのか調べられます。
check_cookie()関数
check_cookie.php (UTF-8N形式で保存してください)
check_cookie()関数の使い方
test.php


check_cookie()関数は、クッキーを一旦書いて調べるので なにも出力していない状態で呼び出す必要があります。

今のブラウザがcookie有効なのか無効なのか調べてみる


ボタンを押せば、URLパラメーターをその都度つけなおしできるので、現在のブラウザの状態が正しく反映されます。
更新で読み込みをすると、?do=check が残り、cookieが無効 と判定されます。