Lost feature - variables_order/register_globals mess

From: Date: Fri, 25 Jan 2002 06:32:33 +0000
Subject: Lost feature - variables_order/register_globals mess
Groups: php.dev 
Request: Send a blank email to php-dev+get-78072@lists.php.net to get a copy of this message
In this whirlwind hack job to turn off register_globals, we have lost a very useful feature. Or maybe it was lost earlier and I didn't pay attention. Today you cannot set variables_order to "ES" and turn register_globals on so that only E and S vars end up in the global symbol table. If you do this, then there is no way to get to G, P and C variables. $HTTP_GET_VARS/$_GET do not get populated anymore when there is no G in variables_order, for example. This is a rather big shame as populating the global symbol table with at least the server variables is a pretty safe thing to do. It's ok that variables_order can be used to speed things up and tell PHP not to hash stuff into the various arrays, but the approach of partially filling globals and fetching the rest from the appropriate arrays is useful. So, I think we either need a new directive along the lines of force_hashing = "GPC" or we need to simply always hash. Or perhaps it would be a negative subtracting directive like: never_hash = "E" -Rasmus

« previous php.dev (#78072) next »