php.netおよびいくつかの SO の質問 ( Cookie の削除)でアドバイスされているように、Cookie を削除します。
setcookie('id', '', time() - 3600, "/", "", false, true);
この解決策を分析すると、サーバーとブラウザのタイムゾーンの差が 1 時間以上ある場合 (移動中のユーザー、異なるタイムゾーン、コンピューターの時計の問題、OS の時計の問題など) は機能しないように見えます。
そのため、さらに過去の日付を設定する予定です。
setcookie('id', '', time() - 86400, "/", "", false, true);
IE が過去の日付の Cookie をスキップできることを確認しました。
どの値が推奨されますか?
ユーザーがコンピュータの時刻設定に問題を抱えている場合 (設定エラーまたは時計の電池切れ) はどうですか? (これが例外的であることは承知していますが、これらの人々は常に私たちのWeb サイトについて不満を漏らし、サポート チケットを集めることになります (これには費用がかかります)。)
注 1: Theolodis が提案したように、次のように Cookie を連鎖させることができます (変更):
setcookie('id', '', time() - 3600, "/", "", false, true);
setcookie('id', '', time() - 90000, "/", "", false, true); #25 hours
setcookie('id', '', 1, "/", "", false, true);
すべてのケースをカバーするのは良い考えですか?
注 2: サーバー側での解決策を探しています (可能であれば)。