HTTP_Session2
[ class tree: HTTP_Session2 ] [ index: HTTP_Session2 ] [ all elements ]

Class: HTTP_Session2

Source Location: /HTTP_Session2-0.7.3/HTTP/Session2.php

Class Overview


Class for managing HTTP sessions


Author(s):

Version:

  • Release: @package_version@

Variables

Methods


Inherited Variables

Inherited Methods


Class Details

[line 112]
Class for managing HTTP sessions

Provides access to session-state values as well as session-level settings and lifetime management methods. Based on the standart PHP session handling mechanism it provides for you more advanced features such as database container, idle and expire timeouts, etc.

Expample 1:

  1.  // Setting some options and detecting of a new session
  2.  HTTP_Session2::start('MySessionID');
  3.  HTTP_Session2::set('variable''The string');
  4.  if (HTTP_Session2::isNew()) {
  5.      echo 'new session was created with the current request';
  6.      $visitors++; // Increase visitors count
  7.  }
  8.  
  9.  //HTTP_Session2::regenerateId();

Example 2:

  1.  // Using database container

Example 3:

  1.  // Setting timeouts
  2.  HTTP_Session2::setExpire(time(+ 60 * 60)// expires in one hour
  3.  HTTP_Session2::setIdle(10 * 60);            // idles in ten minutes
  4.  if (HTTP_Session2::isExpired()) {
  5.      // expired
  6.      echo('Your session is expired!');
  7.      HTTP_Session2::destroy();
  8.  }
  9.  if (HTTP_Session2::isIdle()) {
  10.      // idle
  11.      echo('You've been idle for too long!');
  12.      HTTP_Session2::destroy();
  13.  }
  14.  HTTP_Session2::updateIdle();



[ Top ]


Class Variables

$container =

[line 149]

Container instance
  • Access: public

Type:   mixed


[ Top ]



Method Detail

clear   [line 266]

void clear( )

Free all session variables
  • Todo: TODO Save expire and idle timestamps?
  • Access: public

[ Top ]

destroy   [line 254]

void destroy( )

Frees all session variables and destroys all data registered to a session

This method resets the $_SESSION variable and destroys all of the data associated with the current session in its storage (file or DB). It forces new session to be started after this method is called. It does not unset the session cookie.


[ Top ]

detectID   [line 280]

string detectID( )

Tries to find any session id in $_GET, $_POST or $_COOKIE
  • Return: Session ID (if exists) or null
  • Access: public

[ Top ]

get   [line 544]

mixed &get( string $name, [mixed $default = null])

Returns session variable
  • Return: Value of a variable
  • Access: public

Parameters:

string   $name     Name of a variable
mixed   $default     Default value of a variable if not set

[ Top ]

getLocal   [line 581]

mixed &getLocal( string $name, [mixed $default = null])

Returns local variable of a script

Two scripts can have local variables with the same names

  • Return: Value of a local variable

Parameters:

string   $name     Name of a variable
mixed   $default     Default value of a variable if not set

[ Top ]

id   [line 321]

string id( [string $id = null])

Sets new ID of a session
  • Return: Previous ID of a session
  • See: session_id()
  • Access: public

Parameters:

string   $id     New ID of a sesion

[ Top ]

init   [line 657]

void init( )

init

[ Top ]

isExpired   [line 394]

boolean isExpired( )

Check if session is expired
  • Access: public

[ Top ]

isIdle   [line 415]

boolean isIdle( )

Check if session is idle
  • Return: Obvious
  • Access: public

[ Top ]

isNew   [line 499]

boolean isNew( )

Gets a value indicating whether the session was created with the current request

You MUST call this method only after you have started the session with the HTTP_Session2::start() method.

  • Return: true when the session was created with the current request false otherwise
  • See: self::start()
  • Access: public
  • Uses: self::STARTED

[ Top ]

localName   [line 640]

string localName( [string $name = null])

Sets new local name
  • Return: Previous local name

Parameters:

string   $name     New local name

[ Top ]

name   [line 305]

string name( [string $name = null])

Sets new name of a session
  • Return: Previous name of a session
  • See: session_name()
  • Access: public

Parameters:

string   $name     New name of a sesion

[ Top ]

pause   [line 235]

void pause( )

Writes session data and ends session

Session data is usually stored after your script terminated without the need to call HTTP_Session2::stop(), but as session data is locked to prevent concurrent writes only one script may operate on a session at any time. When using framesets together with sessions you will experience the frames loading one by one due to this locking. You can reduce the time needed to load all the frames by ending the session as soon as all changes to session variables are done.


[ Top ]

regenerateId   [line 675]

boolean regenerateId( [boolean $deleteOldSessionData = false])

Regenrates session id

If session_regenerate_id() is not available emulates its functionality

  • Access: public

Parameters:

boolean   $deleteOldSessionData     Whether to delete data of old session

[ Top ]

register   [line 518]

void register( string $name)

Register variable with the current session

Parameters:

string   $name     Name of a global variable

[ Top ]

replicate   [line 705]

boolean replicate( string $target, [string $id = null])

This function copies session data of specified id to specified table
  • Access: public

Parameters:

string   $target     Target to replicate to
string   $id     Id of record to replicate

[ Top ]

sessionValidThru   [line 378]

integer sessionValidThru( )

Returns the time up to the session is valid
  • Return: Time when the session idles
  • Access: public

[ Top ]

set   [line 560]

mixed set( string $name, mixed $value)

Sets session variable
  • Return: Old value of a variable
  • Access: public

Parameters:

string   $name     Name of a variable
mixed   $value     Value of a variable

[ Top ]

setContainer   [line 166]

void setContainer( string $container, [array $container_options = null])

Sets user-defined session storage functions

Sets the user-defined session storage functions which are used for storing and retrieving data associated with a session. This is most useful when a storage method other than those supplied by PHP sessions is preferred. i.e. Storing the session data in a local database.


Parameters:

string   $container     Name of the container (e.g. DB, MDB, ...).
array   $container_options     Options, most likely an array.

[ Top ]

setExpire   [line 337]

void setExpire( integer $time, [bool $add = false])

Sets the maximum expire time
  • Access: public

Parameters:

integer   $time     Time in seconds
bool   $add     Add time to current expire time or not

[ Top ]

setGcMaxLifetime   [line 721]

boolean setGcMaxLifetime( [int $gcMaxLifetime = null])

If optional parameter is specified it determines the number of seconds after which session data will be seen as 'garbage' and cleaned up

It returns the previous value of this property

  • Return: The previous value of the property
  • Access: public

Parameters:

int   $gcMaxLifetime     If specified it will replace the previous value of this property, and must be integer.

[ Top ]

setGcProbability   [line 742]

boolean setGcProbability( [int $gcProbability = null])

If optional parameter is specified it determines the probability that the gc (garbage collection) routine is started and session data is cleaned up

It returns the previous value of this property

  • Return: The previous value of the property
  • Access: public

Parameters:

int   $gcProbability     If specified it will replace the previous value of this property.

[ Top ]

setIdle   [line 361]

void setIdle( integer $time, [bool $add = false])

Sets the maximum idle time

Sets the time-out period allowed between requests before the session-state provider terminates the session.

  • Access: public

Parameters:

integer   $time     Time in seconds
bool   $add     Add time to current maximum idle time or not

[ Top ]

setLocal   [line 602]

mixed setLocal( string $name, mixed $value)

Sets local variable of a script.

Two scripts can have local variables with the same names.

  • Return: Old value of a local variable

Parameters:

string   $name     Name of a local variable
mixed   $value     Value of a local variable

[ Top ]

start   [line 201]

void start( [string $name = 'SessionID'], [string $id = null])

Initializes session data

Creates a session (or resumes the current one based on the session id being passed via a GET variable or a cookie). You can provide your own name and/or id for a session.


Parameters:

string   $name     Name of a session, default is 'SessionID'
string   $id     Id of a session which will be used only when the session is new

[ Top ]

unregister   [line 531]

void unregister( string $name)

Unregister a variable from the current session

Parameters:

string   $name     Name of a global variable

[ Top ]

updateIdle   [line 435]

void updateIdle( )

Updates the idletime
  • Access: public

[ Top ]

useCookies   [line 464]

boolean useCookies( [boolean $useCookies = null])

If optional parameter is specified it indicates whether the module will use cookies to store the session id on the client side in a cookie.

By default this cookie will be deleted when the browser is closed!

It will throw an Exception if it's not able to set the session.use_cookie property.

It returns the previous value of this property.


Parameters:

boolean   $useCookies     If specified it will replace the previous value of this property. By default 'null', which doesn't change any setting on your system. If you supply a parameter, please supply 'boolean'.

[ Top ]

useTransSID   [line 624]

boolean useTransSID( [boolean $useTransSID = false])

set the usage of transparent SID

Parameters:

boolean   $useTransSID     Flag to use transparent SID

[ Top ]


Documentation generated on Tue, 22 Jun 2010 18:00:04 +0000 by phpDocumentor 1.4.3. PEAR Logo Copyright © PHP Group 2004.