File Manager Lite
Dir:
/home/codewavebd/public_html/vendor/guzzlehttp/psr7/src
Upload
[..]
Exception/
Rename
Del
FnStream.php (5.76 KB)
Edit
Rename
Del
Header.php (4.77 KB)
Edit
Rename
Del
LazyOpenStream.php (1.06 KB)
Edit
Rename
Del
LimitStream.php (5.11 KB)
Edit
Rename
Del
MessageTrait.php (9.81 KB)
Edit
Rename
Del
MimeType.php (55.82 KB)
Edit
Rename
Del
MultipartStream.php (9.85 KB)
Edit
Rename
Del
NoSeekStream.php (1.12 KB)
Edit
Rename
Del
Request.php (4.79 KB)
Edit
Rename
Del
Response.php (5.49 KB)
Edit
Rename
Del
Rfc3986.php (490 B)
Edit
Rename
Del
Rfc7230.php (3 KB)
Edit
Rename
Del
StreamDecoratorTrait.php (4.79 KB)
Edit
Rename
Del
StreamWrapper.php (4.68 KB)
Edit
Rename
Del
UploadedFile.php (4.98 KB)
Edit
Rename
Del
Uri.php (23.44 KB)
Edit
Rename
Del
UriComparator.php (1.24 KB)
Edit
Rename
Del
UriNormalizer.php (8.91 KB)
Edit
Rename
Del
UriResolver.php (8.15 KB)
Edit
Rename
Del
Utils.php (21.66 KB)
Edit
Rename
Del
Edit: Header.php
<?php declare(strict_types=1); namespace GuzzleHttp\Psr7; final class Header { /** * Parse an array of header values containing ";" separated data into an * array of associative arrays representing the header key value pair data * of the header. When a parameter does not contain a value, but just * contains a key, this function will inject a key with a '' string value. * * @param string|array $header Header to parse into components. */ public static function parse($header): array { static $trimmed = "\"' \n\t\r"; $params = $matches = []; foreach ((array) $header as $value) { foreach (self::splitList($value) as $val) { $part = []; foreach (self::splitParameters($val) as $kvp) { if (preg_match_all('/<[^>]+>|[^=]+/', $kvp, $matches)) { $m = $matches[0]; if (isset($m[1])) { $part[trim($m[0], $trimmed)] = trim($m[1], $trimmed); } else { $part[] = trim($m[0], $trimmed); } } } if ($part) { $params[] = $part; } } } return $params; } /** * Split a header value into semicolon-separated parameters. * * @return string[] */ private static function splitParameters(string $value): array { $values = []; $start = 0; $isQuoted = false; $isEscaped = false; for ($i = 0, $max = \strlen($value); $i < $max; ++$i) { $char = $value[$i]; if ($isEscaped) { $isEscaped = false; continue; } if ($isQuoted && $char === '\\') { $isEscaped = true; continue; } if ($char === '"') { $isQuoted = !$isQuoted; continue; } if (!$isQuoted && $char === ';') { $values[] = \substr($value, $start, $i - $start); $start = $i + 1; } } $values[] = \substr($value, $start); return $values; } /** * Converts an array of header values that may contain comma separated * headers into an array of headers with no comma separated values. * * @param string|array $header Header to normalize. * * @deprecated Use self::splitList() instead. */ public static function normalize($header): array { $result = []; foreach ((array) $header as $value) { foreach (self::splitList($value) as $parsed) { $result[] = $parsed; } } return $result; } /** * Splits a HTTP header defined to contain a comma-separated list into * each individual value. Empty values will be removed. * * Example headers include 'accept', 'cache-control' and 'if-none-match'. * * This method must not be used to parse headers that are not defined as * a list, such as 'user-agent' or 'set-cookie'. * * @param string|string[] $values Header value as returned by MessageInterface::getHeader() * * @return string[] */ public static function splitList($values): array { if (!\is_array($values)) { $values = [$values]; } $result = []; foreach ($values as $value) { if (!\is_string($value)) { throw new \TypeError('$header must either be a string or an array containing strings.'); } $v = ''; $isQuoted = false; $isEscaped = false; for ($i = 0, $max = \strlen($value); $i < $max; ++$i) { if ($isEscaped) { $v .= $value[$i]; $isEscaped = false; continue; } if (!$isQuoted && $value[$i] === ',') { $v = \trim($v); if ($v !== '') { $result[] = $v; } $v = ''; continue; } if ($isQuoted && $value[$i] === '\\') { $isEscaped = true; $v .= $value[$i]; continue; } if ($value[$i] === '"') { $isQuoted = !$isQuoted; $v .= $value[$i]; continue; } $v .= $value[$i]; } $v = \trim($v); if ($v !== '') { $result[] = $v; } } return $result; } }
Simpan