CakeFest 2024: The Official CakePHP Conference

SessionHandlerInterface::write

(PHP 5 >= 5.4.0, PHP 7, PHP 8)

SessionHandlerInterface::writeOturum verisini yazar

Açıklama

public SessionHandlerInterface::write(string $kimlik, string $veri): bool

Oturum verisini oturum deposuna yazar. PHP'nin normal kapanışında session_write_close() tarafından veya session_register_shutdown() başarısız olduğunda çağrılır. PHP bu yöntem döndükten hemen sonra bir SessionHandlerInterface::close() çağrısı yapar.

PHP bu yöntemi oturum kaydedilip kapatılmaya hazır olduğunda çağırır. Bu veri, PHP tarafından $_SESSION süper küreseli dahili olarak dizgeleştirilerek veri bağımsız değişkenine aktarılır. Kullanılan dizgeleştirme yöntemi session.serialize_handler yapılandırma yönergesinde belirtilir.

Bu yöntem normalde, doğrudan session_write_close() tarafından çağrılmadıkça, çıktı tamponları kapatıldıktan sonra PHP tarafından dahili olarak çağrılır.

Bağımsız Değişkenler

kimlik

Oturum kimliği.

veri

Deşire edilmiş oturum verisi. Bu veri, PHP tarafından $_SESSION süper küreseli dahili olarak dizgeleştirilerek bu bağımsız değişkene aktarılır. Dikkat: Oturumların kullandığı dizgeleştirme yöntemi farklıdır.

Dönen Değerler

Dönüş değeri (normal olarak başarılıysa true, değilse false). Bu değerin PHP tarafından dahili olarak döndürüleceği unutulmamalıdır.

Ayrıca Bakınız

add a note

User Contributed Notes 3 notes

up
3
jotremb at hotmail dot com
7 years 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.
up
2
barkoczi dot roland at aercode dot com
8 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
Aeric Poon
4 years ago
Warning: session_write_close(): Session callback expects true/false return value in Unknown 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.
To Top