• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

odan / Slim / 15356138503

30 May 2025 09:29PM UTC coverage: 98.372% (-0.2%) from 98.61%
15356138503

push

github

odan
Optimize JsonBodyParserMiddleware

1 of 1 new or added line in 1 file covered. (100.0%)

3 existing lines in 3 files now uncovered.

1027 of 1044 relevant lines covered (98.37%)

42.28 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

90.91
/Slim/Middleware/FormUrlEncodedBodyParserMiddleware.php
1
<?php
2

3
declare(strict_types=1);
4

5
namespace Slim\Middleware;
6

7
use Psr\Http\Message\ResponseInterface;
8
use Psr\Http\Message\ServerRequestInterface;
9
use Psr\Http\Server\MiddlewareInterface;
10
use Psr\Http\Server\RequestHandlerInterface;
11

12
final class FormUrlEncodedBodyParserMiddleware implements MiddlewareInterface
13
{
14
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
15
    {
16
        $method = $request->getMethod();
3✔
17
        $contentType = $request->getHeaderLine('Content-Type');
3✔
18

19
        if (!in_array($method, ['POST', 'PUT', 'PATCH', 'DELETE'], true)) {
3✔
UNCOV
20
            return $handler->handle($request);
×
21
        }
22

23
        if ($this->isFormUrlEncodedMediaType($contentType)) {
3✔
24
            $body = (string)$request->getBody();
2✔
25
            parse_str($body, $parsed);
2✔
26
            $request = $request->withParsedBody($parsed);
2✔
27
        }
28

29
        return $handler->handle($request);
3✔
30
    }
31

32
    private function isFormUrlEncodedMediaType(string $contentType): bool
33
    {
34
        $type = strtolower(trim(explode(';', $contentType)[0]));
3✔
35

36
        return $type === 'application/x-www-form-urlencoded';
3✔
37
    }
38
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc