CakeFest 2024: The Official CakePHP Conference

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.

返回值

会话存储的返回值(通常成功返回 0,失败返回 1)。

参见

add a note

User Contributed Notes 2 notes

up
8
narf at devilix dot net
9 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
-2
tony at marston-home dot demon dot co dot uk
5 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