From:             snake at talitasia dot com
Operating system: Linux
PHP version:      5.3.18
Package:          Session related
Bug Type:         Bug
Bug description:Bug session_set_save_handler() in write function

Description:
------------
write(string $sessionId, string $data)
The write callback is called when the session needs to be saved and closed.
This 
callback receives the current session ID a serialized version the $_SESSION

superglobal.

When the variable $_SESSION hasn't got a value the value returned is
string(0).

Test script:
---------------
<?php
class Handler
{
        public function write( $SessionID, $sData )
        {
                var_dump( serialize( $_SESSION ) ); // Real $sData Value
                var_dump( $sData ); // Return string(0)...
        }
        public function open( $sSavePath, $sSessionName ){return true;}
        public function close(){}
        public function read( $SessionID ){}
        public function destroy( $SessionID ){}
        public function gc( $iMaxLifeTime ){return true;}
}

$Handler = new Handler();
session_set_save_handler( array( $Handler, 'open' ), array( $Handler,
'close' ), array( $Handler,
                'read' ), array( $Handler, 'write' ), array( $Handler, 
'destroy' ),
array( $Handler, 'gc' ) );
session_start();
session_write_close();
?>

Expected result:
----------------
string(6) "a:0:{}" string(6) "a:0:{}"

Actual result:
--------------
string(6) "a:0:{}" string(0) ""

-- 
Edit bug report at https://bugs.php.net/bug.php?id=63358&edit=1
-- 
Try a snapshot (PHP 5.4):   
https://bugs.php.net/fix.php?id=63358&r=trysnapshot54
Try a snapshot (PHP 5.3):   
https://bugs.php.net/fix.php?id=63358&r=trysnapshot53
Try a snapshot (trunk):     
https://bugs.php.net/fix.php?id=63358&r=trysnapshottrunk
Fixed in SVN:               https://bugs.php.net/fix.php?id=63358&r=fixed
Fixed in release:           https://bugs.php.net/fix.php?id=63358&r=alreadyfixed
Need backtrace:             https://bugs.php.net/fix.php?id=63358&r=needtrace
Need Reproduce Script:      https://bugs.php.net/fix.php?id=63358&r=needscript
Try newer version:          https://bugs.php.net/fix.php?id=63358&r=oldversion
Not developer issue:        https://bugs.php.net/fix.php?id=63358&r=support
Expected behavior:          https://bugs.php.net/fix.php?id=63358&r=notwrong
Not enough info:            
https://bugs.php.net/fix.php?id=63358&r=notenoughinfo
Submitted twice:            
https://bugs.php.net/fix.php?id=63358&r=submittedtwice
register_globals:           https://bugs.php.net/fix.php?id=63358&r=globals
PHP 4 support discontinued: https://bugs.php.net/fix.php?id=63358&r=php4
Daylight Savings:           https://bugs.php.net/fix.php?id=63358&r=dst
IIS Stability:              https://bugs.php.net/fix.php?id=63358&r=isapi
Install GNU Sed:            https://bugs.php.net/fix.php?id=63358&r=gnused
Floating point limitations: https://bugs.php.net/fix.php?id=63358&r=float
No Zend Extensions:         https://bugs.php.net/fix.php?id=63358&r=nozend
MySQL Configuration Error:  https://bugs.php.net/fix.php?id=63358&r=mysqlcfg

Reply via email to