diff --git a/src/Symfony/Bundle/WebProfilerBundle/Resources/views/Collector/request.html.twig b/src/Symfony/Bundle/WebProfilerBundle/Resources/views/Collector/request.html.twig
index 8e496fe8a458e..f6648b5b38fe1 100644
--- a/src/Symfony/Bundle/WebProfilerBundle/Resources/views/Collector/request.html.twig
+++ b/src/Symfony/Bundle/WebProfilerBundle/Resources/views/Collector/request.html.twig
@@ -143,7 +143,7 @@
File Name |
MIME Type |
- Size (bytes) |
+ Size (bytes) |
diff --git a/src/Symfony/Component/HttpKernel/DataCollector/RequestDataCollector.php b/src/Symfony/Component/HttpKernel/DataCollector/RequestDataCollector.php
index e1ce38377e431..5afaf39299942 100644
--- a/src/Symfony/Component/HttpKernel/DataCollector/RequestDataCollector.php
+++ b/src/Symfony/Component/HttpKernel/DataCollector/RequestDataCollector.php
@@ -13,6 +13,7 @@
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
use Symfony\Component\HttpFoundation\Cookie;
+use Symfony\Component\HttpFoundation\File\UploadedFile;
use Symfony\Component\HttpFoundation\ParameterBag;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
@@ -58,15 +59,20 @@ public function collect(Request $request, Response $response, \Exception $except
}
$requestFiles = array();
- foreach ($request->files->all() as $files) {
- foreach ($files as $fileName => $fileData) {
- $requestFiles[] = array(
- 'name' => $fileData->getClientOriginalName(),
- 'mimetype' => $fileData->getMimeType(),
- 'size' => $fileData->getSize(),
- );
+ $extractFiles = function (array $files) use (&$extractFiles, &$requestFiles) {
+ foreach ($files as $file) {
+ if ($file instanceof UploadedFile) {
+ $requestFiles[] = array(
+ 'name' => $file->getClientOriginalName(),
+ 'mimetype' => $file->getMimeType(),
+ 'size' => $file->getSize(),
+ );
+ } elseif (\is_array($file)) {
+ $extractFiles($file);
+ }
}
- }
+ };
+ $extractFiles($request->files->all());
$sessionMetadata = array();
$sessionAttributes = array();