Version | Change
--------|-------
-2.0.1 | Added [RFC5987](http://tools.ietf.org/html/rfc5987) support
+2.1.0 | Added [RFC5987](http://tools.ietf.org/html/rfc5987) support
+2.5.0 | Added [RFC5988](http://tools.ietf.org/html/rfc5987) support
## Example:
array(2) {
["*rfc5987*"]=>
array(2) {
- ["a1"]=>
- array(1) {
- [""]=>
- string(3) "aß"
- }
- ["a2"]=>
- array(1) {
- [""]=>
- string(3) "eß"
- }
+ ["a1"]=>
+ array(1) {
+ [""]=>
+ string(3) "aß"
+ }
+ ["a2"]=>
+ array(1) {
+ [""]=>
+ string(3) "eß"
+ }
}
["a3"]=>
string(2) "no"
}
string(98) "p1*=utf-8'de's%C3%BC%C3%9F,p2*=utf-8''hei%C3%9F;a1*=utf-8''a%C3%9F;a2*=utf-8''e%C3%9F;a3=no,p3=not"
+## Web Linking Example:
+
+ $link = <<<EOF
+ Link: </TheBook/chapter2>;
+ rel="previous"; title*=UTF-8'de'letztes%20Kapitel,
+ </TheBook/chapter4>;
+ rel="next"; title*=UTF-8'de'n%c3%a4chstes%20Kapitel
+ EOF;
+
+ $p = current(http\Header::parse($link, "http\\Header"))->getParams(
+ http\Params::DEF_PARAM_SEP,
+ http\Params::DEF_ARG_SEP,
+ http\Params::DEF_VAL_SEP,
+ http\Params::PARSE_RFC5988 | http\Params::PARSE_ESCAPED
+ );
+
+ var_dump($p->params);
+ var_dump((string)$p);
+
+Yields:
+
+ array(2) {
+ ["/TheBook/chapter2"]=>
+ array(2) {
+ ["value"]=>
+ bool(true)
+ ["arguments"]=>
+ array(2) {
+ ["rel"]=>
+ string(8) "previous"
+ ["*rfc5987*"]=>
+ array(1) {
+ ["title"]=>
+ array(1) {
+ ["de"]=>
+ string(15) "letztes Kapitel"
+ }
+ }
+ }
+ }
+ ["/TheBook/chapter4"]=>
+ array(2) {
+ ["value"]=>
+ bool(true)
+ ["arguments"]=>
+ array(2) {
+ ["rel"]=>
+ string(4) "next"
+ ["*rfc5987*"]=>
+ array(1) {
+ ["title"]=>
+ array(1) {
+ ["de"]=>
+ string(17) "nächstes Kapitel"
+ }
+ }
+ }
+ }
+ }
+ string(139) "</TheBook/chapter2>;rel="previous";title*=utf-8'de'letztes%20Kapitel,</TheBook/chapter4>;rel="next";title*=utf-8'de'n%C3%A4chstes%20Kapitel"
## Constants:
Parse URL querystring (same as http\Params::PARSE_URLENCODED|http\Params::PARSE_DIMENSION).
* PARSE_RFC5987
Parse [RFC5987](http://tools.ietf.org/html/rfc5987) style encoded character set and language information embedded in HTTP header params.
+* PARSE_RFC5988
+ Parse [RFC5988](http://tools.ietf.org/html/rfc5988) (Web Linking) tags of Link headers.
## Properties:
-# http\Url http\Url::mod(mixed $parts[, int $flags = http\Url::JOIN_PATH|http\Url::JOIN_QUERY)
+# http\Url http\Url::mod(mixed $parts[, int $flags = http\Url::JOIN_PATH|http\Url::JOIN_QUERY|http\Url::SANITIZE_PATH)
Clone this URL and apply $parts to the cloned URL.
* mixed $parts
New URL parts.
-* Optional int $flags = http\Url::JOIN_PATH|http\Url::JOIN_QUERY
+* Optional int $flags = http\Url::JOIN_PATH|http\Url::JOIN_QUERY|http\Url::SANITIZE_PATH
Modus operandi of URL construction. See http\Url constants.
## Returns:
## Throws:
-
* http\Exception\InvalidArgumentException
* http\Exception\BadUrlException
+
+## Changelog:
+
+Version | Changes
+--------|--------
+2.5.0 | Added http\Url::SANITIZE_PATH to default flags.