MediaWiki REL1_34
MediaWiki\Session\PHPSessionHandler Class Reference

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

Inheritance diagram for MediaWiki\Session\PHPSessionHandler:
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
 

Private Member Functions

 setEnableFlags ( $PHPSessionHandling)
 Set $this->enable and $this->warn.
 

Detailed Description

Adapter for PHP's session handling.

Since
1.27

Definition at line 35 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:\n private For internal use only
Returns
true

Definition at line 196 of file PHPSessionHandler.php.

◆ destroy()

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

Destroy a session.

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

Definition at line 344 of file PHPSessionHandler.php.

◆ gc()

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

Execute garbage collection.

Access:\n private For internal use only
Parameters
int$maxlifetimeMaximum session life time (ignored)
Returns
true See T135576

Definition at line 365 of file PHPSessionHandler.php.

◆ install()

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

Install a session handler for the current web request.

Parameters
SessionManager$manager

Definition at line 111 of file PHPSessionHandler.php.

References MediaWiki\Session\PHPSessionHandler\$manager.

◆ isEnabled()

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

◆ isInstalled()

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

Test whether the handler is installed.

Returns
bool

Definition at line 95 of file PHPSessionHandler.php.

References MediaWiki\Session\PHPSessionHandler\$instance.

◆ open()

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

Initialize the session (handler)

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

Definition at line 181 of file PHPSessionHandler.php.

◆ read()

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

Read session data.

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

Definition at line 210 of file PHPSessionHandler.php.

◆ setEnableFlags()

MediaWiki\Session\PHPSessionHandler::setEnableFlags ( $PHPSessionHandling)
private

Set $this->enable and $this->warn.

Separate just because there doesn't seem to be a good way to test it otherwise.

Parameters
string$PHPSessionHandlingSee $wgPHPSessionHandling

Definition at line 72 of file PHPSessionHandler.php.

Referenced by MediaWiki\Session\PHPSessionHandler\__construct().

◆ setManager()

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

Set the manager, store, and logger.

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

Definition at line 159 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:\n private 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 238 of file PHPSessionHandler.php.

References $cache, and wfDeprecated().

Member Data Documentation

◆ $enable

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

Whether PHP session handling is enabled.

Definition at line 40 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 55 of file PHPSessionHandler.php.

◆ $store

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

◆ $warn

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

Definition at line 43 of file PHPSessionHandler.php.


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