Chi programma in PHP è familiare con l'array $_SESSION e con le funzioni per gestire le sessioni... Nello sviluppo di moduli e componenti per Joomla il problema di gestire dati condivisi all'interno della stessa sessione è notevolmente semplificato dalle API messe a disposizione dal framework. In particolare, la classe JSession rappresenta il materiale sul quale possiamo lavorare. Innanzitutto, quindi, quello che dobbiamo fare è istanziare un oggetto JSession
$session = JSession::getInstance('none',array());
In questo modo otteniamo un'istanza di JSession che ci mette a disposizione una nutrita schiera di metodi; è evidente che ciò che ci interessa maggiormento è settare e leggere variabili di sessione... A questo scopo, esistono due metodi molto semplici che assolvono il compito. Per leggere una variabile di sessione utilizziamo get(), i quali parametri indicano rispettivamente il nome della variabile da leggere e il valore di default da porre nel caso questa non sia trovata. Ad esempio:
$bookingid = $session->get('bookingid', -1);
ottiene il valore bookingid dalla sessione, mettendolo a -1 se non lo trova. Invece, se vogliamo settare il valore di una variabile, abbiamo a disposizione set(), al quale passiamo il nome della variabile da impostare e il valore da darle:
$session->set('bookingid', 100);
setta a 100 il valore bookingid della sessione.
Oltre a queste funzionalità di base rimangono da vedere alcuni metodi che possono rivelarsi utili in determinate situazioni:
* clear(), che esegue l'unset di tutti i dati presenti nella sessione;
* getExpire(), che restituisce i minuti mancanti all'expire della sessione;
* getId(), che restituisce l'id della sessione.
Tratto da:
http://www.dmdigital.it/it/technology-blog/11-sviluppo-joomla/22-gestire-le-variabili-di-sessione-con-jsession.html