phpstorm.dev

PHP ecosystem insights

PHP knowledge

Versioned PHP knowledge with primary sources and explicit verification dates.

Source checks through 2026-10-14 · 56 sources

Verified 2026-10-08 discussion Permanent entry

Uri\QueryParams query parameter proposal

Under discussion; not accepted. The RFC page (version 1.0, dated 2026-02-13, last edited 2026-10-06 at 13:08 UTC according to the wiki's change feed) and the official RFC index both list it as Under Discussion. It proposes the "next minor version after PHP 8.6 (likely PHP 8.7)". Acceptance would need a 2/3 majority.

The proposal was split out of the accepted ext/uri follow-up RFC and builds on the URI extension that PHP 8.5 added (Uri\Rfc3986\Uri and Uri\WhatWg\Url). It would add one immutable class, Uri\QueryParams, that stores query parameters as an ordered list of name-value pairs, with no global request state. It has:

The RFC presents the class as an alternative to $_GET, which it does not propose to change. It lists the differences someone migrating would see: $_GET replaces dots and spaces in names with underscores, keeps only the last value of a repeated name, and drops input beyond max_input_vars with a warning. QueryParams keeps the names as given, keeps all occurrences, and throws when its own limit is exceeded. The RFC states that the change is backward compatible.

Evidence and limitations

Related: support windows.