Requests_Cookie::normalize_attribute()
最后更新于:2021-11-26 01:14:19
Requests_Cookie::normalize_attribute( string$name, string|boolean$value)Parse an individual cookie attribute
参数
- $name
-
(string) (Required) Attribute name
- $value
-
(string|boolean) (Required) Attribute value (string value, or true if empty/flag)
响应
(mixed) Value if available, or null if the attribute value is invalid (and should be skipped)
源文件
文件: gc-includes/Requests/Cookie.php
protected function normalize_attribute($name, $value) {
switch (strtolower($name)) {
case 'expires':
// Expiration parsing, as per RFC 6265 section 5.2.1
if (is_int($value)) {
return $value;
}
$expiry_time = strtotime($value);
if ($expiry_time === false) {
return null;
}
return $expiry_time;
case 'max-age':
// Expiration parsing, as per RFC 6265 section 5.2.2
if (is_int($value)) {
return $value;
}
// Check that we have a valid age
if (!preg_match('/^-?d+$/', $value)) {
return null;
}
$delta_seconds = (int) $value;
if ($delta_seconds <= 0) {
$expiry_time = 0;
}
else {
$expiry_time = $this->reference_time + $delta_seconds;
}
return $expiry_time;
case 'domain':
// Domains are not required as per RFC 6265 section 5.2.3
if (empty($value)) {
return null;
}
// Domain normalization, as per RFC 6265 section 5.2.3
if ($value[0] === '.') {
$value = substr($value, 1);
}
return $value;
default:
return $value;
}
}