クッキーの削除
クッキーの削除
クッキーを削除する最も簡単な方法は、setcookie()に第1引数(クッキー名)のみを指定する方法です。
クッキー削除サンプル:クッキー名のみ指定
setcookie('クッキー名');
上記のようにする事でクッキーを削除する事ができます。
もう1つの方法に、setcookie()の第3引数(有効期限)に負の値、つまり、-(マイナス)の数値を指定して有効期限を過去に設定する方法があります。
クッキー削除サンプル:有効期限を過去に指定
setcookie('クッキー名', '', time() - 60); // 1分前
クッキー削除サンプル
以下が実際のクッキー削除のサンプルです。通常の訪問回数カウンターですが、3回目以上のアクセスは数えないような仕組みになっています。今回は、カウント値が3以上ならクッキーを削除します。クッキーは有効期限なしのクッキーを使用していますので、ブラウザを閉じたら自動的に破棄されます。
訪問回数カウンター:一定数以上でカウント値を戻す
<?php
// 訪問回数カウント用の変数$visitにカウント値を格納
if( isset($_COOKIE['visitcount']) ){ // クッキーがあればその値がカウント値
$visit = $_COOKIE['visitcount'] + 1; // カウント値+1;
} else{ // クッキーがなければ初回訪問としてカウント値は1
$visit = 1;
}
// 3回目以上のアクセスでクッキー削除
if ($visit >= 3) {
setcookie('visitcount', $visit, time() - 3600);
} else {
setcookie('visitcount', $visit);
}
echo '$visitの値:' . $visit;
?>
出力結果
$visitの値:1
更新ボタンを押して訪問回数を増やして行くと分かりますが、カウント値が3まで上がったらクッキーを削除しているので値が1に戻ります。


