Example #1
0
 /**
  * Create fixed server request
  *
  * @param array $server
  *
  * @return $this
  */
 private static function fixCreateServerRequest(array &$server)
 {
     $request = new self($server, $_GET, $_POST, $_COOKIE, $_FILES);
     // parse parameter from body content from method PUT, DELETE and PATCH.
     if ($request->getHeaderBag()->has('Content-Type') && 0 === strpos($request->getHeaderBag()->first('Content-Type')->getFieldValue(), 'application/x-www-form-urlencoded') && in_array(strtoupper($request->getServerBag()->get('REQUEST_METHOD', Request::HTTP_METHOD_GET)), array(Request::HTTP_METHOD_PUT, Request::HTTP_METHOD_DELETE, Request::HTTP_METHOD_PATCH))) {
         parse_str($request->getContent(), $data);
         $request->request = new ParameterBag($data ?: array());
     }
     return $request;
 }