Rasmus Lerdorf wrote: >>>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 should be fixed :) >> > > This of course also affects the import_request_variables() function. For > example, if variables_order does not contain 'G' then this code: > > import_request_variables('GP', 'r_'); > > will not import GET-method data into $r_* > > This should work as well. > > >>It would be a lot easier for PHP application developers >>if they can assume GPCS are always hashed into $_GET, $_POST, >>$_COOKIE and $_SERVER. ($_ENV also?) >> >>How about make "variable_order" affects only for globals? >> > > Well, you still need to resolve precedence for $_REQUEST somehow. >
I forgot about $_REQUEST :) How about this one? - Store EGPCS to $_* hash and initialize them always. - Create "global_order" ini entry to determine $GLOBAL precedence. - Create "request_order" ini to entry determine $_REQUEST precedence. - Get rid of "variable_order" and "gpc_order". If user uses them, warn about it(?). This change is acceptable for 4.2.0, IMHO. (Many lines are needed to be changed, but we are going to set "register_global=Off" as a default, right?) -- Yasuo Ohgaki -- PHP Development Mailing List <http://www.php.net/> To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]