Interface CookieInterface
Cookie Interface
Constants
-
string
EXPIRES_FORMAT ¶'D, d-M-Y H:i:s T'
Expires attribute format.
-
string
SAMESITE_LAX ¶'Lax'
SameSite attribute value: Lax
-
string
SAMESITE_NONE ¶'None'
SameSite attribute value: None
-
string
SAMESITE_STRICT ¶'Strict'
SameSite attribute value: Strict
-
string[]
SAMESITE_VALUES ¶[self::SAMESITE_LAX, self::SAMESITE_STRICT, self::SAMESITE_NONE]
Valid values for "SameSite" attribute.
Method Summary
-
getDomain() public
Get the domain attribute.
-
getExpiresTimestamp() public
Get the timestamp from the expiration time
-
getExpiry() public
Get the current expiry time
-
getFormattedExpires() public
Builds the expiration value part of the header string
-
getId() public
Get the id for a cookie
-
getName() public
Gets the cookie name
-
getPath() public
Get the path attribute.
-
getSameSite() public @method
-
getStringValue() public
Gets the cookie value as a string.
-
getValue() public
Gets the cookie value
-
isExpired() public
Check if a cookie is expired when compared to $time
-
isHttpOnly() public
Check if the cookie is HTTP only
-
isSecure() public
Check if the cookie is secure
-
toHeaderValue() public
Returns the cookie as header value
-
withDomain() public
Create a cookie with an updated domain
-
withExpired() public
Create a new cookie that will expire/delete the cookie from the browser.
-
withExpiry() public
Create a cookie with an updated expiration date
-
withHttpOnly() public
Create a cookie with HTTP Only updated
-
withName() public
Sets the cookie name
-
withNeverExpire() public
Create a new cookie that will virtually never expire.
-
withPath() public
Create a new cookie with an updated path
-
withSameSite() public @method
-
withSecure() public
Create a cookie with Secure updated
-
withValue() public
Create a cookie with an updated value.
Method Detail
getExpiresTimestamp() ¶ public
getExpiresTimestamp(): string|null
Get the timestamp from the expiration time
Timestamps are strings as large timestamps can overflow MAX_INT in 32bit systems.
Returns
string|null
getExpiry() ¶ public
getExpiry(): DateTime|DateTimeImmutable|null
Get the current expiry time
Returns
DateTime|DateTimeImmutable|null
getFormattedExpires() ¶ public
getFormattedExpires(): string
Builds the expiration value part of the header string
Returns
string
getId() ¶ public
getId(): string
Get the id for a cookie
Cookies are unique across name, domain, path tuples.
Returns
string
getStringValue() ¶ public
getStringValue(): string
Gets the cookie value as a string.
This will collapse any complex data in the cookie with json_encode()
Returns
string
isExpired() ¶ public
isExpired(DateTime|DateTimeImmutable $time = null): bool
Check if a cookie is expired when compared to $time
Cookies without an expiration date always return false.
Parameters
-
DateTime|DateTimeImmutable
$time optional The time to test against. Defaults to 'now' in UTC.
Returns
bool
withDomain() ¶ public
withDomain(string $domain): static
Create a cookie with an updated domain
Parameters
-
string
$domain Domain to set
Returns
static
withExpired() ¶ public
withExpired(): static
Create a new cookie that will expire/delete the cookie from the browser.
This is done by setting the expiration time to 1 year ago
Returns
static
withExpiry() ¶ public
withExpiry(DateTime|DateTimeImmutable $dateTime): static
Create a cookie with an updated expiration date
Parameters
-
DateTime|DateTimeImmutable
$dateTime Date time object
Returns
static
withHttpOnly() ¶ public
withHttpOnly(bool $httpOnly): static
Create a cookie with HTTP Only updated
Parameters
-
bool
$httpOnly HTTP Only
Returns
static
withName() ¶ public
withName(string $name): static
Sets the cookie name
Parameters
-
string
$name Name of the cookie
Returns
static
withNeverExpire() ¶ public
withNeverExpire(): static
Create a new cookie that will virtually never expire.
Returns
static
withPath() ¶ public
withPath(string $path): static
Create a new cookie with an updated path
Parameters
-
string
$path Sets the path
Returns
static
withSameSite() ¶ public @method
withSameSite(mixed $sameSite = null): static
Parameters
-
$sameSite optional
Returns
static
withSecure() ¶ public
withSecure(bool $secure): static
Create a cookie with Secure updated
Parameters
-
bool
$secure Secure attribute value
Returns
static
withValue() ¶ public
withValue(string|array $value): static
Create a cookie with an updated value.
Parameters
-
string|array
$value Value of the cookie to set
Returns
static