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

 ID:                 52754
 Updated by:         ahar...@php.net
 Reported by:        dotpointer at gmail dot com
 Summary:            Array keys in $_SESSION with "!" unsets the whole
                     array in PHP 5.3.3
-Status:             Open
+Status:             Bogus
 Type:               Bug
 Package:            Session related
 Operating System:   Slackware Linux 12
 PHP Version:        5.3.3
 Block user comment: N

 New Comment:

I'm not too sure how or why this would have worked in 5.2, but session
variables not being able to use certain characters in their names is
documented behaviour, per http://php.net/session.examples.basic ​​:



"The keys in the $_SESSION associative array are subject to the same
limitations as regular variable names in PHP, i.e. they cannot start
with a number and must start with a letter or underscore. For more
details see the section on variables in this manual."


Previous Comments:
------------------------------------------------------------------------
[2010-08-31 21:47:10] dotpointer at gmail dot com

Description:
------------
Array keys in $_SESSION containing exclamation marks (!) does not seem
to work anymore as of 5.3.3.



Have tried key with different characters like #, " and £ - these
worked. Using "!" in the key seems not only to be unregistered but also
to make the whole $_SESSION to be unset in the next run.



This worked before, as in 5.2.x.

Test script:
---------------
<?

        # (as we're talking sessions, this example need to be run 2 times to
set the session data, push F5...)

        session_start();

        $name = 'hello';        # this does work, uncomment/comment to test

        $name = 'hello!';       # this does not, uncomment/comment to test

        echo $_SESSION[$name];

        $_SESSION[$name] = 'OK';                

?>

Expected result:
----------------
That array keys containing exclamation marks ("!") either give a
understandable error or does work as any other key.

Actual result:
--------------
The whole array is being totally empty if a key containing exclamation
mark is entered.


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



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

Reply via email to