function CookieJar::expire
Removes a cookie by name.
You should never use an empty domain, but if you do so, all cookies for the given name/path expire (this behavior ensures a BC behavior with previous versions of Symfony).
File
-
vendor/
symfony/ browser-kit/ CookieJar.php, line 70
Class
- CookieJar
- CookieJar.
Namespace
Symfony\Component\BrowserKitCode
public function expire(string $name, ?string $path = '/', ?string $domain = null) : void {
$path ??= '/';
if (!$domain) {
// an empty domain means any domain
// this should never happen but it allows for a better BC
$domains = array_keys($this->cookieJar);
}
else {
$domains = [
$domain,
];
}
foreach ($domains as $domain) {
unset($this->cookieJar[$domain][$path][$name]);
if (empty($this->cookieJar[$domain][$path])) {
unset($this->cookieJar[$domain][$path]);
if (empty($this->cookieJar[$domain])) {
unset($this->cookieJar[$domain]);
}
}
}
}