On Tue, May 2, 2017 at 5:56 AM, Andrey Andreev <n...@devilix.net> wrote:
> With parse_str() usage without a second parameter being deprecated, I
> was looking to possibly drop the behavior where it replaces spaces and
> dots with underscores in the result array, and ... As it often turns
> out - it's not that simple, because it re-uses the code that handles
> GPC vars.
>
> I didn't even know this mangling happened with GPC vars. I can only
> assume that's legacy from the the register_global days, as I certainly
> don't see a reason for it now. Am I missing something?
>
> And more importantly, can we change that? It's a significant BC break,
> yes, but the current behavior is horribly broken IMO.
>
BC breaking the default handling of GPCSE vars aside, I'd be 100% in
favor of either adding a flag param to parse_str() for this.

parse_str($_SERVER['QUERY_STRING'], $_GET, PARSE_STR_NOMANGLE);

-Sara

((Or add a new function which doesn't mangle and returns by value
rather than by ref because *ugh* at that by-ref semantic))

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to