Skip to content
echiong edited this page Oct 25, 2012 · 62 revisions

##Class CI_Session

Session Class

Package: [[CodeIgniter<a href="Package CodeIgniter.Libraries.md">Libraries]]
Category: Sessions
Author: ExpressionEngine Dev Team
Link: http://codeigniter.com/user_guide/libraries/sessions.html
Located at system/libraries/Session.php

##Methods summary


public __construct ( mixed $params = array() )

Session Constructor

The constructor runs the session routines automatically whenever the class is instantiated.


public boolean sess_read ( )

Fetch the current session data if it exists

Returns boolean


public sess_write ( )

Write the session data


public sess_create ( )

Create a new session


public sess_update ( )

Update an existing session


public sess_destroy ( )

Destroy the current session


public string userdata ( string $item )

Fetch a specific item from the session array

Parameters

$item string

Returns string


public array all_userdata ( )

Fetch all session data

Returns array


public set_userdata ( mixed $newdata = array(), string $newval = '' )

Add or change data in the "userdata" array

Parameters

$newdata mixed

$newval string


public unset_userdata ( mixed $newdata = array() )

Delete a session variable from the "userdata" array


public set_flashdata ( mixed $newdata = array(), string $newval = '' )

Add or change flashdata, only available until the next request

Parameters

$newdata mixed

$newval string


public keep_flashdata ( string $key )

Keeps existing flashdata available to next request.

Parameters

$key string


public string flashdata ( string $key )

Fetch a specific flashdata item from the session array

Parameters

$key string

Returns string


public _flashdata_mark ( )

Identifies flashdata as 'old' for removal when _flashdata_sweep() runs.


public _flashdata_sweep ( )

Removes all flashdata marked as 'old'


public string _get_time ( )

Get the "now" time

Returns string


public _set_cookie ( mixed $cookie_data = NULL )

Write the session cookie


public string _serialize ( array $data )

Serialize an array

This function first converts any slashes found in the array to a temporary marker, so when it gets unserialized the slashes will be preserved

Parameters

$data array

Returns string


public string _unserialize ( array $data )

Unserialize

This function unserializes a data string, then converts any temporary slash markers back to actual slashes

Parameters

$data array

Returns string


public _sess_gc ( )

Garbage collection

This deletes expired session rows from database if the probability percentage is met

<table class="summary" id="properties">
<caption>Properties summary</caption>
<tr data-order="sess_encrypt_cookie" id="$sess_encrypt_cookie">
	<td class="attributes"><code>
		public  
		boolean
	</code></td>

	<td class="name">

$sess_encrypt_cookie

FALSE
#
		<div class="description detailed">
			

		</div>
	</div></td>
</tr>
<tr data-order="sess_use_database" id="$sess_use_database">
	<td class="attributes"><code>
		public  
		boolean
	</code></td>

	<td class="name">

$sess_use_database

FALSE
#
		<div class="description detailed">
			

		</div>
	</div></td>
</tr>
<tr data-order="sess_table_name" id="$sess_table_name">
	<td class="attributes"><code>
		public  
		string
	</code></td>

	<td class="name">

$sess_table_name

''
#
		<div class="description detailed">
			

		</div>
	</div></td>
</tr>
<tr data-order="sess_expiration" id="$sess_expiration">
	<td class="attributes"><code>
		public  
		integer
	</code></td>

	<td class="name">

$sess_expiration

7200
#
		<div class="description detailed">
			

		</div>
	</div></td>
</tr>
<tr data-order="sess_expire_on_close" id="$sess_expire_on_close">
	<td class="attributes"><code>
		public  
		boolean
	</code></td>

	<td class="name">

$sess_expire_on_close

FALSE
#
		<div class="description detailed">
			

		</div>
	</div></td>
</tr>
<tr data-order="sess_match_ip" id="$sess_match_ip">
	<td class="attributes"><code>
		public  
		boolean
	</code></td>

	<td class="name">

$sess_match_ip

FALSE
#
		<div class="description detailed">
			

		</div>
	</div></td>
</tr>
<tr data-order="sess_match_useragent" id="$sess_match_useragent">
	<td class="attributes"><code>
		public  
		boolean
	</code></td>

	<td class="name">

$sess_match_useragent

TRUE
#
		<div class="description detailed">
			

		</div>
	</div></td>
</tr>
<tr data-order="sess_cookie_name" id="$sess_cookie_name">
	<td class="attributes"><code>
		public  
		string
	</code></td>

	<td class="name">

$sess_cookie_name

'ci_session'
#
		<div class="description detailed">
			

		</div>
	</div></td>
</tr>
<tr data-order="cookie_prefix" id="$cookie_prefix">
	<td class="attributes"><code>
		public  
		string
	</code></td>

	<td class="name">

$cookie_prefix

''
#
		<div class="description detailed">
			

		</div>
	</div></td>
</tr>
<tr data-order="cookie_path" id="$cookie_path">
	<td class="attributes"><code>
		public  
		string
	</code></td>

	<td class="name">

$cookie_path

''
#
		<div class="description detailed">
			

		</div>
	</div></td>
</tr>
<tr data-order="cookie_domain" id="$cookie_domain">
	<td class="attributes"><code>
		public  
		string
	</code></td>

	<td class="name">

$cookie_domain

''
#
		<div class="description detailed">
			

		</div>
	</div></td>
</tr>
<tr data-order="cookie_secure" id="$cookie_secure">
	<td class="attributes"><code>
		public  
		boolean
	</code></td>

	<td class="name">

$cookie_secure

FALSE
#
		<div class="description detailed">
			

		</div>
	</div></td>
</tr>
<tr data-order="sess_time_to_update" id="$sess_time_to_update">
	<td class="attributes"><code>
		public  
		integer
	</code></td>

	<td class="name">

$sess_time_to_update

300
#
		<div class="description detailed">
			

		</div>
	</div></td>
</tr>
<tr data-order="encryption_key" id="$encryption_key">
	<td class="attributes"><code>
		public  
		string
	</code></td>

	<td class="name">

$encryption_key

''
#
		<div class="description detailed">
			

		</div>
	</div></td>
</tr>
<tr data-order="flashdata_key" id="$flashdata_key">
	<td class="attributes"><code>
		public  
		string
	</code></td>

	<td class="name">

$flashdata_key

'flash'
#
		<div class="description detailed">
			

		</div>
	</div></td>
</tr>
<tr data-order="time_reference" id="$time_reference">
	<td class="attributes"><code>
		public  
		string
	</code></td>

	<td class="name">

$time_reference

'time'
#
		<div class="description detailed">
			

		</div>
	</div></td>
</tr>
<tr data-order="gc_probability" id="$gc_probability">
	<td class="attributes"><code>
		public  
		integer
	</code></td>

	<td class="name">

$gc_probability

5
#
		<div class="description detailed">
			

		</div>
	</div></td>
</tr>
<tr data-order="userdata" id="$userdata">
	<td class="attributes"><code>
		public  
		array
	</code></td>

	<td class="name">

$userdata

array()
#
		<div class="description detailed">
			

		</div>
	</div></td>
</tr>
<tr data-order="CI" id="$CI">
	<td class="attributes"><code>
		public  
		mixed
	</code></td>

	<td class="name">

$CI

#
		<div class="description detailed">
			

		</div>
	</div></td>
</tr>
<tr data-order="now" id="$now">
	<td class="attributes"><code>
		public  
		mixed
	</code></td>

	<td class="name">

$now

#
		<div class="description detailed">
			

		</div>
	</div></td>
</tr>
</table>

Packages

Classes

Exceptions

Functions

Clone this wiki locally