2 namespace TYPO3\CMS\Core\Http;
38 $serverParameters = $_SERVER;
39 $headers = static::prepareHeaders($serverParameters);
41 $method = isset($serverParameters[
'REQUEST_METHOD']) ? $serverParameters[
'REQUEST_METHOD'] :
'GET';
50 static::normalizeUploadedFiles($_FILES)
53 if (!empty($_COOKIE)) {
54 $request = $request->withCookieParams($_COOKIE);
57 if (!empty($queryParameters)) {
58 $request = $request->withQueryParams($queryParameters);
61 if (!empty($parsedBody)) {
62 $request = $request->withParsedBody($parsedBody);
77 foreach ($server as $key => $value) {
78 if (strpos($key,
'HTTP_COOKIE') === 0) {
83 if (strpos($key,
'HTTP_') === 0) {
84 $name = strtr(substr($key, 5),
'_',
' ');
85 $name = strtr(ucwords(strtolower($name)),
' ',
'-');
86 $name = strtolower($name);
87 $headers[$name] = $value;
88 }
elseif (strpos($key,
'CONTENT_') === 0) {
89 $name = substr($key, 8);
90 $name =
'Content-' . (($name ==
'MD5') ? $name : ucfirst(strtolower($name)));
91 $name = strtolower($name);
92 $headers[$name] = $value;
110 $normalizedFileUploads = array();
111 foreach ($files as $key => $value) {
113 $normalizedFileUploads[$key] = $value;
114 }
elseif (is_array($value)) {
115 if (isset($value[
'tmp_name'])) {
116 $uploadedFiles = self::createUploadedFile($value);
117 if ($uploadedFiles) {
118 $normalizedFileUploads[$key] = $uploadedFiles;
121 $normalizedFileUploads[$key] = self::normalizeUploadedFiles($value);
124 throw new \InvalidArgumentException(
'Invalid value in files specification.', 1436717282);
127 return $normalizedFileUploads;
141 if (is_array($value[
'tmp_name'])) {
143 foreach (array_keys($value[
'tmp_name']) as $key) {
145 'tmp_name' => $value[
'tmp_name'][$key],
146 'size' => $value[
'size'][$key],
147 'error' => $value[
'error'][$key],
148 'name' => $value[
'name'][$key],
149 'type' => $value[
'type'][$key]
151 $result = self::createUploadedFile($data);
153 $files[$key] = $result;
157 }
elseif (!empty($value[
'tmp_name'])) {
158 return new UploadedFile($value[
'tmp_name'], $value[
'size'], $value[
'error'], $value[
'name'], $value[
'type']);