HeaderUtils
class HeaderUtils
HTTP header utility functions.
Constants
DISPOSITION_ATTACHMENT |
|
DISPOSITION_INLINE |
|
Methods
Splits an HTTP header by one or more separators.
Combines an array of arrays into one associative array.
Joins an associative array into a string for use in an HTTP header.
Encodes a string as a quoted string, if necessary.
Decodes a quoted string.
Generates a HTTP Content-Disposition field-value.
Details
static array
split(string $header, string $separators)
Splits an HTTP header by one or more separators.
Example:
HeaderUtils::split("da, en-gb;q=0.8", ",;")
// => array(array('da'), array('en-gb', 'q=0.8'))
static array
combine(array $parts)
Combines an array of arrays into one associative array.
Each of the nested arrays should have one or two elements. The first value will be used as the keys in the associative array, and the second will be used as the values, or true if the nested array only contains one element. Array keys are lowercased.
Example:
HeaderUtils::combine(array(array("foo", "abc"), array("bar")))
// => array("foo" => "abc", "bar" => true)
static string
toString(array $assoc, string $separator)
Joins an associative array into a string for use in an HTTP header.
The key and value of each entry are joined with "=", and all entries are joined with the specified separator and an additional space (for readability). Values are quoted if necessary.
Example:
HeaderUtils::toString(array("foo" => "abc", "bar" => true, "baz" => "a b c"), ",")
// => 'foo=abc, bar, baz="a b c"'
static string
quote(string $s)
Encodes a string as a quoted string, if necessary.
If a string contains characters not allowed by the "token" construct in the HTTP specification, it is backslash-escaped and enclosed in quotes to match the "quoted-string" construct.