@@ 180-194 (lines=15) @@ | ||
177 | return (string) self::normalize($uri1, $normalizations) === (string) self::normalize($uri2, $normalizations); |
|
178 | } |
|
179 | ||
180 | private static function capitalizePercentEncoding(UriInterface $uri) |
|
181 | { |
|
182 | $regex = '/(?:%[A-Fa-f0-9]{2})++/'; |
|
183 | ||
184 | $callback = function (array $match) { |
|
185 | return strtoupper($match[0]); |
|
186 | }; |
|
187 | ||
188 | return |
|
189 | $uri->withPath( |
|
190 | preg_replace_callback($regex, $callback, $uri->getPath()) |
|
191 | )->withQuery( |
|
192 | preg_replace_callback($regex, $callback, $uri->getQuery()) |
|
193 | ); |
|
194 | } |
|
195 | ||
196 | private static function decodeUnreservedCharacters(UriInterface $uri) |
|
197 | { |
|
@@ 196-210 (lines=15) @@ | ||
193 | ); |
|
194 | } |
|
195 | ||
196 | private static function decodeUnreservedCharacters(UriInterface $uri) |
|
197 | { |
|
198 | $regex = '/%(?:2D|2E|5F|7E|3[0-9]|[46][1-9A-F]|[57][0-9A])/i'; |
|
199 | ||
200 | $callback = function (array $match) { |
|
201 | return rawurldecode($match[0]); |
|
202 | }; |
|
203 | ||
204 | return |
|
205 | $uri->withPath( |
|
206 | preg_replace_callback($regex, $callback, $uri->getPath()) |
|
207 | )->withQuery( |
|
208 | preg_replace_callback($regex, $callback, $uri->getQuery()) |
|
209 | ); |
|
210 | } |
|
211 | ||
212 | private function __construct() |
|
213 | { |