Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
| Total | |
0.00% |
0 / 1 |
|
0.00% |
0 / 1 |
CRAP | |
81.82% |
9 / 11 |
| RequestFactory | |
0.00% |
0 / 1 |
|
0.00% |
0 / 1 |
4.10 | |
81.82% |
9 / 11 |
| create | |
0.00% |
0 / 1 |
4.10 | |
81.82% |
9 / 11 |
|||
| <?php | |
| declare(strict_types=1); | |
| namespace Korobochkin\WPKit\Utils; | |
| use Symfony\Component\HttpFoundation\ParameterBag; | |
| use Symfony\Component\HttpFoundation\Request; | |
| /** | |
| * Class RequestFactory | |
| */ | |
| class RequestFactory | |
| { | |
| /** | |
| * Returns HTTP request instance. | |
| * | |
| * @see wp_magic_quotes | |
| * @see stripslashes_deep | |
| * | |
| * @return Request HTTP request. | |
| */ | |
| public static function create() | |
| { | |
| $get = stripslashes_deep($_GET); | |
| $post = stripslashes_deep($_POST); | |
| $cookie = stripslashes_deep($_COOKIE); | |
| $server = stripslashes_deep($_SERVER); | |
| $request = new Request($get, $post, array(), $cookie, $_FILES, $server); | |
| if ($request->headers->has('CONTENT_TYPE') | |
| && 0 === strpos($request->headers->get('CONTENT_TYPE'), 'application/x-www-form-urlencoded') | |
| && in_array(strtoupper($request->server->get('REQUEST_METHOD', 'GET')), array('PUT', 'DELETE', 'PATCH')) | |
| ) { | |
| parse_str($request->getContent(), $data); | |
| $request->request = new ParameterBag($data); | |
| } | |
| return $request; | |
| } | |
| } |