MediaWiki master
MediaWiki\Session\PHPSessionHandler Class Reference

Adapter for PHP's session handling. More...

Inherits SessionHandlerInterface.

Collaboration diagram for MediaWiki\Session\PHPSessionHandler:

Public Member Functions

 close ()
 Close the session (handler)
 
 destroy ( $id)
 Destroy a session.
 
 gc ( $maxlifetime)
 Execute garbage collection.
 
 open ( $save_path, $session_name)
 Initialize the session (handler)
 
 read ( $id)
 Read session data.
 
 setManager (SessionManagerInterface $manager, BagOStuff $store, LoggerInterface $logger)
 Set the manager, store, and logger.
 
 write ( $id, $dataStr)
 Write session data.
 

Static Public Member Functions

static install (SessionManager $manager)
 Install a session handler for the current web request.
 
static isEnabled ()
 Test whether the handler is installed and enabled.
 
static isInstalled ()
 Test whether the handler is installed.
 

Protected Member Functions

 __construct (SessionManager $manager)
 

Protected Attributes

bool $enable = false
 Whether PHP session handling is enabled.
 
LoggerInterface $logger
 
SessionManagerInterface null $manager
 
array $sessionFieldCache = []
 Track original session fields for later modification check.
 
BagOStuff null $store
 
bool $warn = true
 

Static Protected Attributes

static PHPSessionHandler $instance = null
 

Detailed Description

Adapter for PHP's session handling.

Since
1.27

Definition at line 40 of file PHPSessionHandler.php.

Constructor & Destructor Documentation

◆ __construct()

MediaWiki\Session\PHPSessionHandler::__construct ( SessionManager $manager)
protected

Member Function Documentation

◆ close()

MediaWiki\Session\PHPSessionHandler::close ( )

Close the session (handler)

Access: internal
For internal use only
Returns
true

Definition at line 203 of file PHPSessionHandler.php.

◆ destroy()

MediaWiki\Session\PHPSessionHandler::destroy ( $id)

Destroy a session.

Access: internal
For internal use only
Parameters
string$idSession id
Returns
true

Definition at line 354 of file PHPSessionHandler.php.

◆ gc()

MediaWiki\Session\PHPSessionHandler::gc ( $maxlifetime)

Execute garbage collection.

Access: internal
For internal use only
Parameters
int$maxlifetimeMaximum session life time (ignored)
Returns
true

Definition at line 376 of file PHPSessionHandler.php.

References wfTimestampNow().

◆ install()

static MediaWiki\Session\PHPSessionHandler::install ( SessionManager $manager)
static

Install a session handler for the current web request.

Parameters
SessionManager$manager

Definition at line 116 of file PHPSessionHandler.php.

References MediaWiki\Session\PHPSessionHandler\$manager.

◆ isEnabled()

static MediaWiki\Session\PHPSessionHandler::isEnabled ( )
static

Test whether the handler is installed and enabled.

Returns
bool

Definition at line 108 of file PHPSessionHandler.php.

Referenced by MediaWiki\Session\SessionBackend\resetId(), and MediaWiki\Session\SessionBackend\unpersist().

◆ isInstalled()

static MediaWiki\Session\PHPSessionHandler::isInstalled ( )
static

Test whether the handler is installed.

Returns
bool

Definition at line 100 of file PHPSessionHandler.php.

References MediaWiki\Session\PHPSessionHandler\$instance.

◆ open()

MediaWiki\Session\PHPSessionHandler::open ( $save_path,
$session_name )

Initialize the session (handler)

Access: internal
For internal use only
Parameters
string$save_pathPath used to store session files (ignored)
string$session_nameSession name (ignored)
Returns
true

Definition at line 187 of file PHPSessionHandler.php.

◆ read()

MediaWiki\Session\PHPSessionHandler::read ( $id)

Read session data.

Access: internal
For internal use only
Parameters
string$idSession id
Returns
string Session data

Definition at line 218 of file PHPSessionHandler.php.

◆ setManager()

MediaWiki\Session\PHPSessionHandler::setManager ( SessionManagerInterface $manager,
BagOStuff $store,
LoggerInterface $logger )

Set the manager, store, and logger.

Access: internal
Use self::install().
Parameters
SessionManagerInterface$manager
BagOStuff$store
LoggerInterface$logger

Definition at line 164 of file PHPSessionHandler.php.

References MediaWiki\Session\PHPSessionHandler\$logger, MediaWiki\Session\PHPSessionHandler\$manager, and MediaWiki\Session\PHPSessionHandler\$store.

Referenced by MediaWiki\Session\SessionManager\setupPHPSessionHandler().

◆ write()

MediaWiki\Session\PHPSessionHandler::write ( $id,
$dataStr )

Write session data.

Access: internal
For internal use only
Parameters
string$idSession id
string$dataStrSession data. Not that you should ever call this directly, but note that this has the same issues with code injection via user-controlled data as does PHP's unserialize function.
Returns
bool

Definition at line 247 of file PHPSessionHandler.php.

References wfDeprecated().

Member Data Documentation

◆ $enable

bool MediaWiki\Session\PHPSessionHandler::$enable = false
protected

Whether PHP session handling is enabled.

Definition at line 45 of file PHPSessionHandler.php.

◆ $instance

PHPSessionHandler MediaWiki\Session\PHPSessionHandler::$instance = null
staticprotected

◆ $logger

LoggerInterface MediaWiki\Session\PHPSessionHandler::$logger
protected

◆ $manager

◆ $sessionFieldCache

array MediaWiki\Session\PHPSessionHandler::$sessionFieldCache = []
protected

Track original session fields for later modification check.

Definition at line 60 of file PHPSessionHandler.php.

◆ $store

BagOStuff null MediaWiki\Session\PHPSessionHandler::$store
protected

◆ $warn

bool MediaWiki\Session\PHPSessionHandler::$warn = true
protected

Definition at line 48 of file PHPSessionHandler.php.


The documentation for this class was generated from the following file: