Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mengapa `setcookie(\"user\", false);` Tidak Memadam Semua Kuki Laman Web dalam PHP?

Mengapa `setcookie(\"user\", false);` Tidak Memadam Semua Kuki Laman Web dalam PHP?

Linda Hamilton
Linda Hamiltonasal
2024-10-24 18:37:44302semak imbas

Why Doesn't `setcookie(

Cara Memadam Semua Kuki Laman Web dalam PHP

Anda telah menghadapi isu di mana setcookie("pengguna", palsu); fungsi tidak memadamkan semua kuki tapak web dengan berkesan. Artikel ini meneroka penyelesaian kepada masalah ini, menyediakan coretan PHP yang menangani keperluan khusus ini.

Penyelesaian: Fungsi setcookie() PHP

Untuk menyahset semua kuki untuk anda domain menggunakan PHP, rujuk dokumentasi PHP pada setcookie(). Kod berikut berkesan mencapai matlamat ini:

<code class="php">// unset cookies
if (isset($_SERVER['HTTP_COOKIE'])) {
    $cookies = explode(';', $_SERVER['HTTP_COOKIE']);
    foreach($cookies as $cookie) {
        $parts = explode('=', $cookie);
        $name = trim($parts[0]);
        setcookie($name, '', time()-1000);
        setcookie($name, '', time()-1000, '/');
    }
}</code>

Kod ini berulang melalui semua kuki yang tersedia, memadam setiap satu dengan menetapkan tamat tempoh kepada tarikh yang lalu dan secara eksplisit menetapkan laluan kuki kepada '/'.

Untuk rujukan lanjut, sila rujuk dokumentasi PHP pada setcookie() di http://www.php.net/manual/en/function.setcookie.php#73484.

Atas ialah kandungan terperinci Mengapa `setcookie(\"user\", false);` Tidak Memadam Semua Kuki Laman Web dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn