Session

Permet de gérer les sessions utilisateurs.

Configuration

  • En début de page PHP (voir aussi : classe Autoload)
require('config.php');
require('classes/_Autoload_.php');

Exemples

start

Obligatoire à chaque début de page

Session::start();

end

FIXME

set

Configure la valeur d'une clé

Session::set('language','fr');
Session::set('auth',FALSE);

remove (unset)

Supprime un ensemble clé/valeur

Session::remove('language');

has

Vérifie un ensemble clé/valeur

if (Session::has('auth'))
    echo 'Logged in';

get

FIXME

Session.php
// Updated 2018-03-07
 
class Session
{
 
	public function __construct()
	{
	}
 
 
	/**
	 * Starts new or resumes existing session
	 *
	 * @access  public
	 * @return  bool
	 */
 
	public static function start()
	{
		if(session_start()) {
			return true;
		}
		return false;
	}
 
 
	/**
	 * End existing session, destroy, unset and delete session cookie
	 *
	 * @access  public
	 * @return  void
	 */
 
	public static function end()
	{
		if($this->status != true) {
			$this->start();
		}
 
		session_destroy();
		session_unset();
		setcookie(session_name(), null, 0, "/");
	}
 
 
	/**
	 * Set new session item
	 *
	 * @access  public
	 * @param   mixed
	 * @param   mixed
	 * @return  mixed
	 */
 
	public static function set($key, $value)
	{
		return $_SESSION[$key] = $value;
	}
 
 
	/**
	 * Unset session key
	 *
	 * @access  public
	 * @param   mixed  - session key
	 * @return  bool
	 */
 
	public static function remove($key)
	{
		unset($_SESSION[$key]);
		return true;
	}
 
 
	/**
	 * Checks if session key is already set
	 *
	 * @access  public
	 * @param   mixed  - session key
	 * @return  bool
	 */
 
	public static function has($key)
	{
		if(isset($_SESSION[$key])) {
			return true;
		}
 
		return false;
	}
 
 
	/**
	 * Get session item
	 *
	 * @access  public
	 * @param   mixed
	 * @return  mixed
	 */
 
	public static function get($key)
	{
		if(!isset($_SESSION[$key])) {
			return false;
		}
 
		return $_SESSION[$key];
	}
}