2020/08/12 15:03

PHPでのCOOKIE削除方法

一度COOKIEを設定したはいいが、やっぱりSESSIONで行こう!

そうなると設定してたCOOKIEは不要になるのでいったん削除したいなぁ…

と、思ってやってたのがきっかけだったのですが、なぜか削除がうまくいかない。

そんな時に試したアレコレをご紹介します。

 

 

一般的な削除の記述

 

【PHP】

setcookie("hoge", "", time() - 3600);

 

※「hoge」はクッキー名が入ります。

 

これで一発で削除が決まればいいんですが、私の場合はこれがうまくいきませんでした。

そこでちょっと調べてみた時に試した3点。

 

 

①ヘッダー外では動かない

<html>を呼び出す前に実行されるような記述にしましょう。

ヘッダー外にsetcookieを呼び出すのはNGみたいです。

ちなみにWPの場合はfunctions.phpに呼び出すすように書けばいいんじゃないかと思います。

 

②パスを指定してみる

 

第4引数の箇所にスラッシュを入れてパス指定。

 

setcookie( 'hoge', '', time() - 3600, '/');

 

作成時もそうなんですが、削除の時もこうしてあげるといいみたいです。

 

③unset関数を入れてみる

 

unset関数ってのを入れておくといいみたいです。

 

unset( $_COOKIE['hoge'] );

 

どうしてもうまくいかない時は上記をお試しあれ。

 

現場から以上です!

 

2053