PHPackages                             loophp/unaltered-psr-http-message-bridge-bundle - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [HTTP &amp; Networking](/categories/http)
4. /
5. loophp/unaltered-psr-http-message-bridge-bundle

ActiveSymfony-bundle[HTTP &amp; Networking](/categories/http)

loophp/unaltered-psr-http-message-bridge-bundle
===============================================

A drop-in replacement for symfony/psr-http-message-bridge, that does not alter query parameters.

2.0.5(4y ago)519.1k1[1 issues](https://github.com/loophp/unaltered-psr-http-message-bridge-bundle/issues)[4 PRs](https://github.com/loophp/unaltered-psr-http-message-bridge-bundle/pulls)1MITPHPPHP &gt;= 7.3CI passing

Since Jun 11Pushed 5d ago1 watchersCompare

[ Source](https://github.com/loophp/unaltered-psr-http-message-bridge-bundle)[ Packagist](https://packagist.org/packages/loophp/unaltered-psr-http-message-bridge-bundle)[ Docs](http://github.com/loophp/unaltered-psr-http-message-bridge-bundle)[ Fund](https://www.paypal.me/drupol)[ GitHub Sponsors](https://github.com/drupol)[ RSS](/packages/loophp-unaltered-psr-http-message-bridge-bundle/feed)WikiDiscussions master Synced 3d ago

READMEChangelog (8)Dependencies (9)Versions (28)Used By (1)

[![Latest Stable Version](https://camo.githubusercontent.com/ef999f8e4a0023bb861e9ab5d7ac70dd1730820e3af39d3df179da882a9463d0/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6c6f6f7068702f756e616c74657265642d7073722d687474702d6d6573736167652d6272696467652d62756e646c652e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/loophp/unaltered-psr-http-message-bridge-bundle)[![GitHub stars](https://camo.githubusercontent.com/4812c60764747896a54644bd54bc2f0929fef58c72771e85d2178c108b8280f3/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f73746172732f6c6f6f7068702f756e616c74657265642d7073722d687474702d6d6573736167652d6272696467652d62756e646c652e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/loophp/unaltered-psr-http-message-bridge-bundle)[![Total Downloads](https://camo.githubusercontent.com/52ec1c8553c79987360bc1be699212707e8145823bfe479766951e23d91bfcac/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6c6f6f7068702f756e616c74657265642d7073722d687474702d6d6573736167652d6272696467652d62756e646c652e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/loophp/unaltered-psr-http-message-bridge-bundle)[![GitHub Workflow Status](https://camo.githubusercontent.com/8bd6f1246e45f85e7c7845257eb20d4e19497e4ff47ef8ba97ba9a54d8eb5645/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f776f726b666c6f772f7374617475732f6c6f6f7068702f756e616c74657265642d7073722d687474702d6d6573736167652d6272696467652d62756e646c652f556e697425323074657374733f7374796c653d666c61742d737175617265)](https://github.com/loophp/unaltered-psr-http-message-bridge-bundle/actions)[![Scrutinizer code quality](https://camo.githubusercontent.com/2ef329570df0fd1f7aaeffcbe0647754c0440face22e605f7f3230d235221f8c/68747470733a2f2f696d672e736869656c64732e696f2f7363727574696e697a65722f7175616c6974792f672f6c6f6f7068702f756e616c74657265642d7073722d687474702d6d6573736167652d6272696467652d62756e646c652f6d61737465722e7376673f7374796c653d666c61742d737175617265)](https://scrutinizer-ci.com/g/loophp/unaltered-psr-http-message-bridge-bundle/?branch=master)[![Type Coverage](https://camo.githubusercontent.com/bca15759c5793dfeccd410b9ad77bb8cd3cd333a128c5e6e34ae2b30f2af11d5/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f64796e616d69632f6a736f6e3f7374796c653d666c61742d73717561726526636f6c6f723d636f6c6f72266c6162656c3d54797065253230636f7665726167652671756572793d6d6573736167652675726c3d687474707325334125324625324673686570686572642e6465762532466769746875622532466c6f6f706870253246756e616c74657265642d7073722d687474702d6d6573736167652d6272696467652d62756e646c65253246636f766572616765)](https://shepherd.dev/github/loophp/unaltered-psr-http-message-bridge-bundle)[![Code Coverage](https://camo.githubusercontent.com/8f3b98d7f3e12ea119d0278bcb5a78cf9f9ffbfe59f5b8a4b05b718e87e25e62/68747470733a2f2f696d672e736869656c64732e696f2f7363727574696e697a65722f636f7665726167652f672f6c6f6f7068702f756e616c74657265642d7073722d687474702d6d6573736167652d6272696467652d62756e646c652f6d61737465722e7376673f7374796c653d666c61742d737175617265)](https://scrutinizer-ci.com/g/loophp/unaltered-psr-http-message-bridge-bundle/?branch=master)[![License](https://camo.githubusercontent.com/a78a6ebaac33e3bc9bc39e042fbcaf06e21771f762ed84d94e91b0279825791c/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f6c6f6f7068702f756e616c74657265642d7073722d687474702d6d6573736167652d6272696467652d62756e646c652e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/loophp/unaltered-psr-http-message-bridge-bundle)[![Donate!](https://camo.githubusercontent.com/a71f45de7e408be2477113d166e9ee94c90bbf814a1373fd154aa5b6652302de/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f53706f6e736f722d4769746875622d627269676874677265656e2e7376673f7374796c653d666c61742d737175617265)](https://github.com/sponsors/drupol)[![Donate!](https://camo.githubusercontent.com/cd335a74177c62640acfbb95db4f1848f818606fdf17dc36aed4eef93061dc10/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f53706f6e736f722d50617970616c2d627269676874677265656e2e7376673f7374796c653d666c61742d737175617265)](https://www.paypal.me/drupol)

Unaltered PSR HTTP Message Bridge Bundle
========================================

[](#unaltered-psr-http-message-bridge-bundle)

An opt-in and drop-in replacement bundle for [symfony/psr-http-message-bridge](https://github.com/symfony/psr-http-message-bridge)that doesn't alter the query parameters.

This package register a decorator for the service `PsrHttpFactory` in your Symfony application.

The only difference with the original class from [symfony/psr-http-message-bridge](https://github.com/symfony/psr-http-message-bridge) is that it doesn't alter the query parameters when converting a Symfony request into a PSR7 request.

Context:

-
- [symfony/symfony#29664](https://github.com/symfony/symfony/issues/29664)
-
-
-
-
-
-

### TL;DR

[](#tldr)

Symfony's [Request class](https://github.com/symfony/symfony/blob/master/src/Symfony/Component/HttpFoundation/Request.php)uses [parse\_str()](https://www.php.net/manual/en/function.parse-str.php) function to parse the query string, but `parse_str()` alter the parameter key if it contains `.` and replaces them with `_`. This issue makes the Request object harder to work with when we some logic needs to heavily rely on query parameters ([API Platform](https://api-platform.com/), [CAS](https://github.com/ecphp/cas-bundle), ... ).

Requirements
============

[](#requirements)

- PHP &gt;= 7.1.3
- Symfony &gt;= 4

Installation
============

[](#installation)

```
composer require loophp/unaltered-psr-http-message-bridge-bundle
```

Usage
=====

[](#usage)

```
