WpOrg\Requests
Cookie::normalize_attribute()
Parse an individual cookie attribute
Handles parsing individual attributes from the cookie values.
Method of the class: Cookie{}
No Hooks.
Return
Mixed
. Value if available, or null if the attribute value is invalid (and should be skipped)
Usage
// protected - for code of main (parent) or child class $result = $this->normalize_attribute( $name, $value );
- $name(string) (required)
- Attribute name
- $value(string|int|true|false) (required)
- Attribute value (string/integer value, or true if empty/flag)
Cookie::normalize_attribute() Cookie::normalize attribute code WP 6.6.2
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; } }