Class CakeSession

Session class for CakePHP.

CakePHP abstracts the handling of sessions. There are several convenient methods to access session information. This class is the implementation of those methods. They are mostly used by the Session Component.

Package: Cake\Model\Datasource
Copyright: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
License: MIT License
Located at Cake/Model/Datasource/CakeSession.php

Method Detail

_checkValidsource protected static

_checkValid( )

Helper method to create a new session.

_configureSessionsource protected static

_configureSession( )

Helper method to initialize a session, based on CakePHP core settings.

Sessions can be configured with a few shortcut names as well as have any number of ini settings declared.

Throws

CakeSessionException
Throws exceptions when ini_set() fails.

_cookieNamesource protected static

_cookieName( )

Get session cookie name.

Returns

string
string

_defaultConfigsource protected static

_defaultConfig( string $name )

Get one of the prebaked default session configurations.

Parameters

string $name
Config name.

Returns

boolean|array
bool|array

_errorsource protected static

_error( integer $errorNumber )

Return error description for given error number.

Parameters

integer $errorNumber
Error to set

Returns

string
Error as string

_getHandlersource protected static

_getHandler( string $handler )

Find the handler class and make sure it implements the correct interface.

Parameters

string $handler
Handler name.

Throws

CakeSessionException
CakeSessionException

_hasSessionsource protected static

_hasSession( )

Returns whether a session exists

Returns

boolean
bool

_overwritesource protected static

_overwrite( array $old , array $new )

Used to write new data to _SESSION, since PHP doesn't like us setting the _SESSION var itself.

Parameters

array $old
$old Set of old variables => values
array $new
New set of variable => value

_returnSessionVarssource protected static

_returnSessionVars( )

Returns all session variables.

Returns

mixed
Full $_SESSION array, or false on error.

_setErrorsource protected static

_setError( integer $errorNumber , string $errorMessage )

Helper method to set an internal error message.

Parameters

integer $errorNumber
Number of the error
string $errorMessage
Description of the error

_setHostsource protected static

_setHost( string $host )

Set the host name

Parameters

string $host
Hostname

_setPathsource protected static

_setPath( string|null $base null )

Setup the Path variable

Parameters

string|null $base optional null
base path

_startSessionsource protected static

_startSession( )

Helper method to start a session

Returns

boolean
Success

_validAgentAndTimesource protected static

_validAgentAndTime( )

Tests that the user agent is valid and that the session hasn't 'timed out'. Since timeouts are implemented in CakeSession it checks the current static::$time against the time the session is set to expire. The User agent is only checked if Session.checkAgent == true.

Returns

boolean
bool

_writeConfigsource protected static

_writeConfig( )

Writes configuration variables to the session

checksource public static

check( string $name )

Returns true if given variable is set in session.

Parameters

string $name
Variable name to check for

Returns

boolean
True if variable is there

clearsource public static

clear( boolean $renew true )

Clears the session.

Optionally also clears the session id and renews the session.

Parameters

boolean $renew optional true
If the session should also be renewed. Defaults to true.

consumesource public static

consume( string $name )

Reads and deletes a variable from session.

Parameters

string $name
The key to read and remove (or a path as sent to Hash.extract).

Returns

mixed
The value of the session variable, null if session not available, session not started, or provided name not found in the session.

deletesource public static

delete( string $name )

Removes a variable from session.

Parameters

string $name
Session variable to remove

Returns

boolean
Success

destroysource public static

destroy( )

Helper method to destroy invalid sessions.

errorsource public static

error( )

Returns last occurred error as a string, if any.

Returns

mixed
Error description as a string, or false.

idsource public static

id( string|null $id null )

Returns the session id. Calling this method will not auto start the session. You might have to manually assert a started session.

Passing an id into it, you can also replace the session id if the session has not already been started. Note that depending on the session handler, not all characters are allowed within the session id. For example, the file session handler only allows characters in the range a-z A-Z 0-9 , (comma) and - (minus).

Parameters

string|null $id optional null
Id to replace the current session id

Returns

string
Session id

initsource public static

init( string|null $base null )

Pseudo constructor.

Parameters

string|null $base optional null
The base path for the Session

readsource public static

read( string|null $name null )

Returns given session variable, or all of them, if no parameters given.

Parameters

string|null $name optional null
The name of the session variable (or a path as sent to Set.extract)

Returns

mixed
The value of the session variable, null if session not available, session not started, or provided name not found in the session, false on failure.

renewsource public static

renew( )

Restarts this session.

startsource public static

start( )

Starts the Session.

Returns

boolean
True if session was started

startedsource public static

started( )

Determine if Session has been started.

Returns

boolean
True if session has been started.

userAgentsource public static

userAgent( string|null $userAgent null )

Get / Set the user agent

Parameters

string|null $userAgent optional null
Set the user agent

Returns

string
Current user agent.

validsource public static

valid( )

Returns true if session is valid.

Returns

boolean
Success

writesource public static

write( string|array $name , string $value null )

Writes value to given session variable name.

Parameters

string|array $name
Name of variable
string $value optional null
Value to write

Returns

boolean
True if the write was successful, false if the write failed

Properties summary

$_cookieNamesource

protected static string

Session cookie name

null

$_initializedsource

protected static boolean

Whether or not the init function in this class was already called

false

$_userAgentsource

protected static string

User agent string

''

$cookieLifeTimesource

public static integer

Cookie lifetime

$errorsource

public static array

Error messages for this session

false

$hostsource

public static string

Hostname

null

$idsource

public static string

Current Session id

null

$lastErrorsource

public static integer

Error number of last occurred error

null

$pathsource

public static string

Path to where the session is active.

'/'

$requestCountdownsource

public static integer

Number of requests that can occur during a session time without the session being renewed. This feature is only used when config value Session.autoRegenerate is set to true.

See

CakeSession::_checkValid()
10

$sessionTimesource

public static integer

Time when this session becomes invalid.

false

$timesource

public static integer

Start time for this session.

false

$timeoutsource

public static integer

Session timeout multiplier factor

null

$validsource

public static boolean

True if the Session is still valid

false

© 2005–2016 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
http://api.cakephp.org/2.7/class-CakeSession.html