ID:               45272
 User updated by:  tavin dot cole at gmail dot com
 Reported By:      tavin dot cole at gmail dot com
 Status:           Open
 Bug Type:         Feature/Change Request
 Operating System: any
 PHP Version:      5.2.6
 New Comment:

the following is a trivial patch for those needing a workaround to this
problem.  it only inhibits the munging of dots and doesn't address
things like spaces and square brackets.  it also doesn't address
introducing an INI setting.

diff -ru php-5.2.6._dist/main/php_variables.c
php-5.2.6._mine/main/php_variables.c
--- php-5.2.6._dist/main/php_variables.c        2007-12-31
07:20:15.000000000 +0000
+++ php-5.2.6._mine/main/php_variables.c        2008-06-14
23:34:25.000000000 +0000
@@ -91,7 +91,7 @@
 
        /* ensure that we don't have spaces or dots in the variable
name (not binary safe) */
        for (p = var; *p; p++) {
-               if (*p == ' ' || *p == '.') {
+               if (*p == ' ' /*|| *p == '.'*/) {
                        *p='_';
                } else if (*p == '[') {
                        is_array = 1;


Previous Comments:
------------------------------------------------------------------------

[2008-06-14 23:01:55] tavin dot cole at gmail dot com

Description:
------------
It's well known that PHP converts dots to underscores for incoming
variable names.  This is very frustrating when writing modern PHP code
with register_globals off and using $_REQUEST etc. instead.

It's been stated this will not be changed due to BC issues.

Why not introduce an INI setting to inhibit this behavior?

Thanks for your consideration.




------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=45272&edit=1

Reply via email to