PHP Conference Nagoya 2025

SessionHandlerInterface::open

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

SessionHandlerInterface::openInitialize session

Опис

public SessionHandlerInterface::open(string $path, string $name): bool

Re-initialize existing session, or creates a new one. Called when a session starts or when session_start() is invoked.

Параметри

path

The path where to store/retrieve the session.

name

The session name.

Значення, що повертаються

Результат (зазвичай true у разі успіху, false у разі невдачі). Варто зазначити, що значення повертається до PHP для внутрішньої обробки.

Прогляньте також

add a note

User Contributed Notes 2 notes

up
8
narf at devilix dot net
10 years ago
The suggestion that you should free the lock as soon as possible is WRONG (and for some reason, I can't downvote it right now).

Releasing the lock before the write() call is as effective as not using locks at all. The whole point is that a concurrent read() HAS to be blocked until the session is closed, otherwise you'll have race conditions.

If you care about the performance aspect, you should take care to call session_write_close() as soon as possible instead.
up
-1
tony at marston-home dot demon dot co dot uk
6 years ago
Note that once $sessionName has been used to provide a value for $sessionId from the cookie data it is totally redundant as all further reading and writing of the session data is controlled by $sessionId.

If, for any reason, it becomes necessary to identify the value for $sessionName which is associated with the current $sessionId then you should use the value that was passed on the open() method. Attempting to use a value from an alternative source could have unexpected side effects.
To Top