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.
Method Detail
_checkValidsource protected static
_checkValid( )
Helper method to create a new session.
_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
protected static string
Session cookie name
$_initializedsource
protected static boolean
Whether or not the init function in this class was already called
protected static string
User agent string
$cookieLifeTimesource
public static integer
Cookie lifetime
public static array
Error messages for this session
public static string
Hostname
public static string
Current Session id
public static integer
Error number of last occurred error
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()
public static integer
Time when this session becomes invalid.
public static integer
Start time for this session.
public static integer
Session timeout multiplier factor
public static boolean
True if the Session is still valid