Le risposte fornite non hanno risolto il mio problema,
Io non l'ho fatto:
- Rimuovere i cookie del dominio padre (da abc; rimuovere bc; cookie),
- Rimuovere i cookie da un percorso più alto diverso da quello di root.
Il mio copione sì, vedi.
<?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, '.')));
}
}
Non è la soluzione più carina / sicura / ottimale, quindi usala solo se non conosci il percorso del cookie e / o il dominio dei cookie. Oppure usa l'idea per creare la tua versione.