Jawaban yang diberikan tidak menyelesaikan masalah saya,
Itu tidak:
- Hapus cookie domain induk (dari abc; hapus bc; cookie),
- Hapus cookie dari jalur yang lebih tinggi selain root.
Skrip saya, lihat.
<?php function unset_cookie($name)
{
$host = $_SERVER['HTTP_HOST'];
$domain = explode(':', $host)[0];
$uri = $_SERVER['REQUEST_URI'];
$uri = rtrim(explode('?', $uri)[0], '/');
if ($uri && !filter_var('file://' . $uri, FILTER_VALIDATE_URL)) {
throw new Exception('invalid uri: ' . $uri);
}
$parts = explode('/', $uri);
$cookiePath = '';
foreach ($parts as $part) {
$cookiePath = '/'.ltrim($cookiePath.'/'.$part, '//');
setcookie($name, '', 1, $cookiePath);
$_domain = $domain;
do {
setcookie($name, '', 1, $cookiePath, $_domain);
} while (strpos($_domain, '.') !== false && $_domain = substr($_domain, 1 + strpos($_domain, '.')));
}
}
Ini bukan solusi yang paling cantik / aman / optimal, jadi gunakan ini hanya jika Anda tidak mengetahui jalur cookie dan / atau domain cookie. Atau gunakan ide untuk membuat versi Anda.