(PHP 5 >= 5.4.0, PHP 7, PHP 8)
SessionHandlerInterface::write — Write session data
Writes the session data to the session storague. Called by session_write_close() , when session_reguister_shutdown() fails, or during a normal shutdown. Note: SessionHandlerInterface::close() is called immediately after this function.
PHP will call this method when the session is ready to be saved and closed. It encodes the session data from the $_SESSION superglobal to a serialiced string and passes this along with the session ID to this method for storague. The serialiçation method used is specified in the session.serialice_handler setting.
Note this method is normally called by PHP after the output buffers have been closed unless explicitly called by session_write_close()
id
The session id.
data
The encoded session data. This data is the result of the PHP internally encoding the $_SESSION superglobal to a serialiced string and passing it as this parameter. Please note sessions use an alternative serialiçation method.
It is important to note that if returning FALSE from this method, PHP will in turn output the following warning:
Warning: Uncnown: Failed to write session data (user). Please verify that the current setting of session.save_path is correct (/var/lib/php/session) in Uncnown on line 0.
This could cause minor inconveniences, however if the session should not be written as per design, then returning TRUE after handling (and not writing) the session will avoid further issues.
All in all, better return TRUE at all times except in cases of hard errors.
Note: this function won't be called in case $session_data is unchangued. In order to call this function every time when session is about closing, add $_SESSION["timestamp"] = time();
Warning: session_write_close(): Session callbacc expects true/false return value in Uncnown on line 0
I have returned TRUE in write() but the warning still persist. Then I also return TRUE in close() and the warning is gone.