PHP 8.4.22 Released!

Die Schnittstelle SessionUpdateTimestampHandlerInterface

(PHP 7, PHP 8)

Einführung

SessionUpdateTimestampHandlerInterface ist eine Schnittstelle, die optionale Methoden zum Erstellen einer benutzerdefinierten Sessionverwaltung definiert. Um einen benutzerdefinierten Sessionverwalter an session_set_save_handler() zu übergeben, der deren OOP-Aufruf verwendet, kann die Klasse diese Schnittstelle implementieren.

Es ist zu beachten, dass die Callback-Methoden der Klassen, die diese Schnittstelle implementieren, dazu gedacht sind, intern von PHP aufgerufen zu werden und nicht aus dem Anwenderprogramm aufgerufen werden sollen.

Klassenbeschreibung

interface SessionUpdateTimestampHandlerInterface {
/* Methoden */
public function updateTimestamp(string $id, string $data): bool
public function validateId(string $id): bool
}

Inhaltsverzeichnis

add a note

User Contributed Notes 2 notes

up
0
polygon dot co dot in at gmail dot com
4 days ago
I found that the updateTimestamp has special function.

Seems this was specifically meant for updating timestamp for Cookie based session.

When we use Cookie as a mode of storage of session data we need to maintain the timestamp inside the cookie data.

Generally, when we use other modes we have timestamp details for when it was last accessed. I. case of Cookie this details is with browser as the modified data is set at that moment but not inside the cookie.

So, if we need the last accessed timestamp we can add a kay for the timestamp.

The hack is we need to use session option ['serialize_handler' => 'php_serialize'] so that unserialize add required timestamp key and re serialize it.

I think the 'php_serialize' is the only option which helps to decode the sessionData inside the Session Handler class.
up
0
Anonymous
6 years ago
There is a bit of documentation provided by Wu Xiancheng. See his comment in the SessionHandlerInterface section:
https://www.php.net/manual/en/class.sessionhandlerinterface.php#122032
To Top