2009-12-16 7 views
3
setcookie('id', null, 1, "/", ".domain.name"); 

ci-dessus ne supprime un cookie spécifique, mais comment les supprimer?Comment supprimer tous les cookies en PHP?

+0

Cocher cette réponse: http: // stackoverflow.com/questions/2310558/how-to-delete-all-cookies-of-my-website-in-php/2310591#2310591 – trante

Répondre

13

Cela devrait faire l'affaire:

foreach ($_COOKIES as $c_id => $c_value) 
{ 
    setcookie($c_id, NULL, 1, "/", ".domain.name"); 
} 
+0

Est-ce que cela fonctionnera également pour un réseau multidimensionnel? – user198729

+0

Ne sait pas exactement comment vous vous attendez à définir un cookie de tableau multidimensionnel à moins que l'ID est comme 'test [quelque chose]' –

+0

bien, ouais, puisqu'il fait référence au nom du cookie, donc quel que soit le type de cookie, il Je vais être nettoyé. –

-10

Man, n'est pas plus facile à essuyer juste tous les cookies comme ceci:

$_COOKIE=array(); 
0
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, '/'); 
     } 
    } 
Questions connexes