/var/www/flurhymez/vendor/guzzlehttp/psr7/src
NameSizeModeActions
Exception/-0755rm
AppendStream.php59770644editdlrm
BufferStream.php32440644editdlrm
CachingStream.php45260644editdlrm
DroppingStream.php11420644editdlrm
FnStream.php44800644editdlrm
Header.php20840644editdlrm
HttpFactory.php30960644editdlrm
InflateStream.php13360644editdlrm
LazyOpenStream.php8990644editdlrm
LimitStream.php42430644editdlrm
Message.php82020644editdlrm
MessageTrait.php66180644editdlrm
MimeType.php43050644editdlrm
MultipartStream.php47820644editdlrm
NoSeekStream.php4700644editdlrm
PumpStream.php46030644editdlrm
Query.php36400644editdlrm
Request.php38990644editdlrm
Response.php49050644editdlrm
Rfc7230.php6650644editdlrm
ServerRequest.php95890644editdlrm
Stream.php72870644editdlrm
StreamDecoratorTrait.php33600644editdlrm
StreamWrapper.php41090644editdlrm
UploadedFile.php48590644editdlrm
Uri.php218420644editdlrm
UriNormalizer.php84190644editdlrm
UriResolver.php85580644editdlrm
Utils.php142480644editdlrm
Edit: /var/www/flurhymez/vendor/guzzlehttp/psr7/src/MultipartStream.php (4782B)
boundary = $boundary ?: sha1(uniqid('', true)); $this->stream = $this->createStream($elements); } public function getBoundary(): string { return $this->boundary; } public function isWritable(): bool { return false; } /** * Get the headers needed before transferring the content of a POST file * * @param array $headers */ private function getHeaders(array $headers): string { $str = ''; foreach ($headers as $key => $value) { $str .= "{$key}: {$value}\r\n"; } return "--{$this->boundary}\r\n" . trim($str) . "\r\n\r\n"; } /** * Create the aggregate stream that will be used to upload the POST data */ protected function createStream(array $elements = []): StreamInterface { $stream = new AppendStream(); foreach ($elements as $element) { $this->addElement($stream, $element); } // Add the trailing boundary with CRLF $stream->addStream(Utils::streamFor("--{$this->boundary}--\r\n")); return $stream; } private function addElement(AppendStream $stream, array $element): void { foreach (['contents', 'name'] as $key) { if (!array_key_exists($key, $element)) { throw new \InvalidArgumentException("A '{$key}' key is required"); } } $element['contents'] = Utils::streamFor($element['contents']); if (empty($element['filename'])) { $uri = $element['contents']->getMetadata('uri'); if (substr($uri, 0, 6) !== 'php://') { $element['filename'] = $uri; } } [$body, $headers] = $this->createElement( $element['name'], $element['contents'], $element['filename'] ?? null, $element['headers'] ?? [] ); $stream->addStream(Utils::streamFor($this->getHeaders($headers))); $stream->addStream($body); $stream->addStream(Utils::streamFor("\r\n")); } private function createElement(string $name, StreamInterface $stream, ?string $filename, array $headers): array { // Set a default content-disposition header if one was no provided $disposition = $this->getHeader($headers, 'content-disposition'); if (!$disposition) { $headers['Content-Disposition'] = ($filename === '0' || $filename) ? sprintf( 'form-data; name="%s"; filename="%s"', $name, basename($filename) ) : "form-data; name=\"{$name}\""; } // Set a default content-length header if one was no provided $length = $this->getHeader($headers, 'content-length'); if (!$length) { if ($length = $stream->getSize()) { $headers['Content-Length'] = (string) $length; } } // Set a default Content-Type if one was not supplied $type = $this->getHeader($headers, 'content-type'); if (!$type && ($filename === '0' || $filename)) { if ($type = MimeType::fromFilename($filename)) { $headers['Content-Type'] = $type; } } return [$stream, $headers]; } private function getHeader(array $headers, string $key) { $lowercaseHeader = strtolower($key); foreach ($headers as $k => $v) { if (strtolower($k) === $lowercaseHeader) { return $v; } } return null; } }