Class SessionComponent
The CakePHP SessionComponent provides a way to persist client data between
page requests. It acts as a wrapper for the $_SESSION
as well as providing
convenience methods for several $_SESSION
related functions.
Link: http://book.cakephp.org/2.0/en/core-libraries/components/sessions.html
Link: http://book.cakephp.org/2.0/en/development/sessions.html
Copyright: Copyright 2005-2011, Cake Software Foundation, Inc. (http://cakefoundation.org)
License: License (http://www.opensource.org/licenses/mit-license.php)
Location: Cake/Controller/Component/SessionComponent.php
Inherited Properties
Method Summary
-
check() public
Used to check if a session variable is set -
delete() public
Wrapper for SessionComponent::del(); -
destroy() public
Used to destroy sessions -
error() public
Used to determine the last error in a session. -
id() public
Returns Session id -
read() public
Used to read a session values for a key or return values for all keys. -
renew() public
Used to renew a session id -
setFlash() public
Used to set a session variable that can be used to output messages in the view. -
started() public
Returns a bool, whether or not the session has been started. -
userAgent() public
Get / Set the userAgent -
valid() public
Used to check for a valid session. -
write() public
Used to write a value to a session key.
Method Detail
check() public ¶
check( string $name )
Used to check if a session variable is set
In your controller: $this->Session->check('Controller.sessKey');
Parameters
- string $name
- the name of the session key you want to check
Returns
true is session variable is set, false if not
Link
delete() public ¶
delete( string $name )
Wrapper for SessionComponent::del();
In your controller: $this->Session->delete('Controller.sessKey');
Parameters
- string $name
- the name of the session key you want to delete
Returns
true is session variable is set and can be deleted, false is variable was not set.
Link
destroy() public ¶
destroy( )
Used to destroy sessions
In your controller: $this->Session->destroy();
Link
error() public ¶
error( )
Used to determine the last error in a session.
In your controller: $this->Session->error();
Returns
Last session error
id() public ¶
id( string $id = null )
Returns Session id
If $id is passed in a beforeFilter, the Session will be started with the specified id
Parameters
- string $id optional null
Returns
read() public ¶
read( string $name = null )
Used to read a session values for a key or return values for all keys.
In your controller: $this->Session->read('Controller.sessKey'); Calling the method without a param will return all session vars
Parameters
- string $name optional null
- the name of the session key you want to read
Returns
value from the session vars
Link
setFlash() public ¶
setFlash( string $message , string $element = 'default' , array $params = array() , string $key = 'flash' )
Used to set a session variable that can be used to output messages in the view.
In your controller: $this->Session->setFlash('This has been saved');
Additional params below can be passed to customize the output, or the Message.[key]. You can also set additional parameters when rendering flash messages. See SessionHelper::flash() for more information on how to do that.
Parameters
- string $message
- Message to be flashed
- string $element optional 'default'
- Element to wrap flash message in.
- array $params optional array()
- Parameters to be sent to layout as view variables
- string $key optional 'flash'
- Message key, default is 'flash'
Link
started() public ¶
started( )
Returns a bool, whether or not the session has been started.
Returns
userAgent() public ¶
userAgent( string $userAgent = null )
Get / Set the userAgent
Parameters
- string $userAgent optional null
- Set the userAgent
valid() public ¶
valid( )
Used to check for a valid session.
In your controller: $this->Session->valid();
Returns
true is session is valid, false is session is invalid
write() public ¶
write( string $name , string $value = null )
Used to write a value to a session key.
In your controller: $this->Session->write('Controller.sessKey', 'session value');
Parameters
- string $name
The name of the key your are setting in the session. This should be in a Controller.key format for better organizing
- string $value optional null
- The value you want to store in a session.
Returns
Success
Link
Methods inherited from Component
__construct() public ¶
__construct( ComponentCollection
$collection , array $settings = array() )
Constructor
Parameters
-
ComponentCollection
$collection - A ComponentCollection this component can use to lazy load its components
- array $settings optional array()
- Array of configuration settings.
Overrides
__get() public ¶
__get( string $name )
Magic method for lazy loading $components.
Parameters
- string $name
- Name of component to get.
Returns
A Component object or null.
beforeRedirect() public ¶
beforeRedirect( Controller
$controller , string|array $url , integer $status = null , boolean $exit = true )
Called before Controller::redirect(). Allows you to replace the url that will be redirected to with a new url. The return of this method can either be an array or a string.
If the return is an array and contains a 'url' key. You may also supply the following:
status
The status code for the redirectexit
Whether or not the redirect should exit.
If your response is a string or an array that does not contain a 'url' key it will be used as the new url to redirect to.
Parameters
-
Controller
$controller - Controller with components to beforeRedirect
- string|array $url
- Either the string or url array that is being redirected to.
- integer $status optional null
- The status code of the redirect
- boolean $exit optional true
- Will the script exit.
Returns
Either an array or null.
Link
beforeRender() public ¶
beforeRender( Controller
$controller )
Called after the Controller::beforeRender(), after the view class is loaded, and before the Controller::render()
Parameters
-
Controller
$controller - Controller with components to beforeRender
Link
initialize() public ¶
initialize( Controller
$controller )
Called before the Controller::beforeFilter().
Parameters
-
Controller
$controller - Controller with components to initialize
Link
shutdown() public ¶
shutdown( Controller
$controller )
Called after Controller::render() and before the output is printed to the browser.
Parameters
-
Controller
$controller - Controller with components to shutdown
Link
startup() public ¶
startup( Controller
$controller )
Called after the Controller::beforeFilter() and before the controller action
Parameters
-
Controller
$controller - Controller with components to startup
Link
Methods inherited from Object
_mergeVars() protected ¶
_mergeVars( array $properties , string $class , boolean $normalize = true )
Merges this objects $property with the property in $class' definition. This classes value for the property will be merged on top of $class'
This provides some of the DRY magic CakePHP provides. If you want to shut it off, redefine this method as an empty function.
Parameters
- array $properties
- The name of the properties to merge.
- string $class
- The class to merge the property with.
- boolean $normalize optional true
- Set to true to run the properties through Set::normalize() before merging.
_set() protected ¶
_set( array $properties = array() )
Allows setting of multiple properties of the object in a single line of code. Will only set properties that are part of a class declaration.
Parameters
- array $properties optional array()
- An associative array containing properties and corresponding values.
_stop() protected ¶
_stop( integer|string $status = 0 )
Stop execution of the current script. Wraps exit() making testing easier.
Parameters
- integer|string $status optional 0
- see http://php.net/exit for values
dispatchMethod() public ¶
dispatchMethod( string $method , array $params = array() )
Calls a method on this object with the given parameters. Provides an OO wrapper
for call_user_func_array
Parameters
- string $method
- Name of the method to call
- array $params optional array()
- Parameter list to use when calling $method
Returns
Returns the result of the method call
log() public ¶
log( string $msg , integer $type = LOG_ERROR )
Convenience method to write a message to CakeLog. See CakeLog::write() for more information on writing to logs.
Parameters
- string $msg
- Log message
- integer $type optional LOG_ERROR
- Error type constant. Defined in app/Config/core.php.
Returns
Success of log write
requestAction() public ¶
requestAction( mixed $url , array $extra = array() )
Calls a controller's method from any location. Can be used to connect controllers together or tie plugins into a main application. requestAction can be used to return rendered views or fetch the return value from controller actions.
Under the hood this method uses Router::reverse() to convert the $url parameter into a string URL. You should use URL formats that are compatible with Router::reverse()
Passing POST and GET data
POST and GET data can be simulated in requestAction. Use $extra['url']
for
GET data. The $extra['data']
parameter allows POST data simulation.
Parameters
- mixed $url
String or array-based url. Unlike other url arrays in CakePHP, this url will not automatically handle passed and named arguments in the $url parameter.
- array $extra optional array()
if array includes the key "return" it sets the AutoRender to true. Can also be used to submit GET/POST data, and named/passed arguments.
Returns
Boolean true or false on success/failure, or contents of rendered action if 'return' is set in $extra.
toString() public ¶
toString( )
Object-to-string conversion. Each class can override this method as necessary.
Returns
The name of this class