MediaWiki  master
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) More...
 
 destroy ( $id)
 Destroy a session. More...
 
 gc ( $maxlifetime)
 Execute garbage collection. More...
 
 open ( $save_path, $session_name)
 Initialize the session (handler) More...
 
 read ( $id)
 Read session data. More...
 
 setManager (SessionManagerInterface $manager, BagOStuff $store, LoggerInterface $logger)
 Set the manager, store, and logger. More...
 
 write ( $id, $dataStr)
 Write session data. More...
 

Static Public Member Functions

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

Protected Member Functions

 __construct (SessionManager $manager)
 

Protected Attributes

bool $enable = false
 Whether PHP session handling is enabled. More...
 
LoggerInterface $logger
 
SessionManagerInterface null $manager
 
array $sessionFieldCache = []
 Track original session fields for later modification check. More...
 
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 38 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 114 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 106 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 98 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 43 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 58 of file PHPSessionHandler.php.

◆ $store

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

◆ $warn

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

Definition at line 46 of file PHPSessionHandler.php.


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