404

[ Avaa Bypassed ]




Upload:

Command:

elspacio@3.144.113.109: ~ $
<?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 (preg_split('/;(?=([^"]*"[^"]*")*[^"]*$)/', $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;
    }

    /**
     * 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;
    }
}

Filemanager

Name Type Size Permission Actions
Exception Folder 0755
AppendStream.php File 5.84 KB 0644
BufferStream.php File 3.17 KB 0644
CachingStream.php File 4.48 KB 0644
DroppingStream.php File 1.17 KB 0644
FnStream.php File 4.4 KB 0644
Header.php File 3.84 KB 0644
HttpFactory.php File 3.02 KB 0644
InflateStream.php File 1.36 KB 0644
LazyOpenStream.php File 926 B 0644
LimitStream.php File 4.2 KB 0644
Message.php File 8.13 KB 0644
MessageTrait.php File 7.6 KB 0644
MimeType.php File 52.9 KB 0644
MultipartStream.php File 4.92 KB 0644
NoSeekStream.php File 524 B 0644
PumpStream.php File 4.5 KB 0644
Query.php File 3.57 KB 0644
Request.php File 3.81 KB 0644
Response.php File 4.79 KB 0644
Rfc7230.php File 665 B 0644
ServerRequest.php File 9.37 KB 0644
Stream.php File 7.23 KB 0644
StreamDecoratorTrait.php File 3.28 KB 0644
StreamWrapper.php File 4.01 KB 0644
UploadedFile.php File 4.75 KB 0644
Uri.php File 21.36 KB 0644
UriComparator.php File 1.12 KB 0644
UriNormalizer.php File 8.22 KB 0644
UriResolver.php File 8.36 KB 0644
Utils.php File 15.2 KB 0644