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