PHP 8.3.0 RC 6 available for testing

SessionUpdateTimestampHandlerInterface::updateTimestamp

(PHP 7, PHP 8)

SessionUpdateTimestampHandlerInterface::updateTimestampUpdate timestamp

说明

public SessionUpdateTimestampHandlerInterface::updateTimestamp(string $id, string $data): bool

Updates the last modification timestamp of the session. This function is automatically executed when a session is updated.

参数

id

The session ID.

data

The session data.

返回值

Returns true if the timestamp was updated, false otherwise. Note that this value is returned internally to PHP for processing.

add a note

User Contributed Notes 3 notes

up
5
ohcc at 163 dot com
3 years ago
When session.lazy_write is enabled, which is the default behaviour, session data will NOT be UPDATED if it remains unchanged, in this way the WRITE method of the session handler will not be called at all.

If your session handler storages session data into files, UpdateTimestamp is used to update the "last modified time" of the session file, if your session handler storages session data into a database, UpdateTimestamp is used to update the table field that storages the last modified time of the session registry.
up
2
ohcc at 163 dot com
3 years ago
'validateId' is called after 'open' and before 'read' to validate the session id provided by the client, as 'open' -> 'validateId' -> 'read' -> 'write' -> 'close' are called in sequence.

If 'validateId' returns false, a new session id will be generated, the session cookie will also be updated afterwards.
up
1
tuncdan dot ozdemir dot peng at gmail dot com
10 months ago
I am not sure why the data is needed for this method if it only updated the timestamp only. Otherwise wouldn't his be the same the 'write' method? I think it is confusing and the manual unfortunately doesn't give much information about the whole session mechanics.
To Top