name: Cookie class_comment: '# * Represents a cookie. # * # * @author Johannes M. Schmitt ' dependencies: [] properties: [] methods: - name: fromString visibility: public parameters: - name: cookie - name: decode default: 'false' comment: "# * Represents a cookie.\n# *\n# * @author Johannes M. Schmitt \n\ # */\n# class Cookie\n# {\n# public const SAMESITE_NONE = 'none';\n# public const\ \ SAMESITE_LAX = 'lax';\n# public const SAMESITE_STRICT = 'strict';\n# \n# protected\ \ int $expire;\n# protected string $path;\n# \n# private ?string $sameSite = null;\n\ # private bool $secureDefault = false;\n# \n# private const RESERVED_CHARS_LIST\ \ = \"=,; \\t\\r\\n\\v\\f\";\n# private const RESERVED_CHARS_FROM = ['=', ',',\ \ ';', ' ', \"\\t\", \"\\r\", \"\\n\", \"\\v\", \"\\f\"];\n# private const RESERVED_CHARS_TO\ \ = ['%3D', '%2C', '%3B', '%20', '%09', '%0D', '%0A', '%0B', '%0C'];\n# \n# /**\n\ # * Creates cookie from raw header string." - name: create visibility: public parameters: - name: name - name: value default: 'null' - name: expire default: '0' - name: path default: '''/''' - name: domain default: 'null' - name: secure default: 'null' - name: httpOnly default: 'true' - name: raw default: 'false' - name: sameSite default: self::SAMESITE_LAX - name: partitioned default: 'false' comment: '# * @see self::__construct # * # * @param self::SAMESITE_*|''''|null $sameSite' - name: __construct visibility: public parameters: - name: name - name: value default: 'null' - name: expire default: '0' - name: path default: '''/''' - name: domain default: 'null' - name: secure default: 'null' - name: httpOnly default: 'true' - name: raw default: 'false' - name: sameSite default: self::SAMESITE_LAX - name: partitioned default: 'false' comment: '# * @param string $name The name of the cookie # * @param string|null $value The value of the cookie # * @param int|string|\DateTimeInterface $expire The time the cookie expires # * @param string|null $path The path on the server in which the cookie will be available on # * @param string|null $domain The domain that the cookie is available to # * @param bool|null $secure Whether the client should send back the cookie only over HTTPS or null to auto-enable this when the request is already using HTTPS # * @param bool $httpOnly Whether the cookie will be made accessible only through the HTTP protocol # * @param bool $raw Whether the cookie value should be sent with no url encoding # * @param self::SAMESITE_*|''''|null $sameSite Whether the cookie will be available for cross-site requests # * # * @throws \InvalidArgumentException' - name: withValue visibility: public parameters: - name: value comment: '# * Creates a cookie copy with a new value.' - name: withDomain visibility: public parameters: - name: domain comment: '# * Creates a cookie copy with a new domain that the cookie is available to.' - name: withExpires visibility: public parameters: - name: expire default: '0' comment: '# * Creates a cookie copy with a new time the cookie expires.' - name: expiresTimestamp visibility: private parameters: - name: expire default: '0' comment: '# * Converts expires formats to a unix timestamp.' - name: withPath visibility: public parameters: - name: path comment: '# * Creates a cookie copy with a new path on the server in which the cookie will be available on.' - name: withSecure visibility: public parameters: - name: secure default: 'true' comment: '# * Creates a cookie copy that only be transmitted over a secure HTTPS connection from the client.' - name: withHttpOnly visibility: public parameters: - name: httpOnly default: 'true' comment: '# * Creates a cookie copy that be accessible only through the HTTP protocol.' - name: withRaw visibility: public parameters: - name: raw default: 'true' comment: '# * Creates a cookie copy that uses no url encoding.' - name: withSameSite visibility: public parameters: - name: sameSite comment: '# * Creates a cookie copy with SameSite attribute. # * # * @param self::SAMESITE_*|''''|null $sameSite' - name: withPartitioned visibility: public parameters: - name: partitioned default: 'true' comment: '# * Creates a cookie copy that is tied to the top-level site in cross-site context.' - name: __toString visibility: public parameters: [] comment: '# * Returns the cookie as a string.' - name: getName visibility: public parameters: [] comment: '# * Gets the name of the cookie.' - name: getValue visibility: public parameters: [] comment: '# * Gets the value of the cookie.' - name: getDomain visibility: public parameters: [] comment: '# * Gets the domain that the cookie is available to.' - name: getExpiresTime visibility: public parameters: [] comment: '# * Gets the time the cookie expires.' - name: getMaxAge visibility: public parameters: [] comment: '# * Gets the max-age attribute.' - name: getPath visibility: public parameters: [] comment: '# * Gets the path on the server in which the cookie will be available on.' - name: isSecure visibility: public parameters: [] comment: '# * Checks whether the cookie should only be transmitted over a secure HTTPS connection from the client.' - name: isHttpOnly visibility: public parameters: [] comment: '# * Checks whether the cookie will be made accessible only through the HTTP protocol.' - name: isCleared visibility: public parameters: [] comment: '# * Whether this cookie is about to be cleared.' - name: isRaw visibility: public parameters: [] comment: '# * Checks if the cookie value should be sent with no url encoding.' - name: isPartitioned visibility: public parameters: [] comment: '# * Checks whether the cookie should be tied to the top-level site in cross-site context.' - name: getSameSite visibility: public parameters: [] comment: '# * @return self::SAMESITE_*|null' - name: setSecureDefault visibility: public parameters: - name: default comment: '# * @param bool $default The default value of the "secure" flag when it is set to null' traits: [] interfaces: []