Forum PHP 2017

SessionHandlerInterface::write

(PHP 5 >= 5.4.0, PHP 7)

SessionHandlerInterface::writeEscreve os dados de sessão

Descrição

abstract public bool SessionHandlerInterface::write ( string $session_id , string $session_data )

Escreve os dados de sessão no armazenamento de sessão. Chamada por session_write_close(), quando session_register_shutdown() falhar ou na finalização normal. Note que o método SessionHandlerInterface::close() é chamado imediatamente depois desta função.

O PHP chamará este método quando a sessão estiver pronta para salvar e fechar. O PHP codifica os dados da super global $_SESSION em uma string serializada e passa o resultado junto com o ID de sessão à este método para armazenamento. O método de serialização usado é especificado na configuração session.serialize_handler.

Note que este método normalmente é chamado pelo PHP depois que o buffer de saída é fechado, a não ser que ele seja chamado explicitamente por session_write_close()

Parâmetros

session_id

O id da sessão.

session_data

Os dados de sessão codificados. Esta informação é o resultado codificado internamente pelo PHP da super global $_SESSION em uma string serializada e passada como este parâmetro. Note que sessões usam um método alternativo de serialização.

Valor Retornado

O valor retornado (geralmente TRUE no sucesso, FALSE em falha). Note que esse valor é retornado internamente ao PHP para processamento.

Veja Também

add a note add a note

User Contributed Notes 2 notes

up
3
barkoczi dot roland at aercode dot com
2 years ago
Note: this function won't be called in case $session_data is unchanged. In order to call this function every time when session is about closing, add $_SESSION["timestamp"] = time();
up
1
jotremb at hotmail dot com
5 months ago
It is important to note that if returning FALSE from this method, PHP will in turn output the following warning:

Warning: Unknown: Failed to write session data (user). Please verify that the current setting of session.save_path is correct (/var/lib/php/session) in Unknown 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.
To Top