В этой статье мы рассмотрим некоторые методы класса JSession с помощью которого мы можем работать с сессиями в Joomla framework

Для того что бы начать работать с сессиями нужно получить объект класса JSession:

$session = JFactory::getSession();

Итак рассмотрим основные методы для работы с сессиями.

Для того что бы установить новое значение сессии:

 

$session = JFactory::getSession();
$session->set( 'mySessionVar', 100 );

 

Для того что бы получить значение из установленной сессии mySessionName нам нужно написать следующий код:

 

$session = JFactory::getSession();
$session->get('mySessionVar', 'значение по умолчанию');

 

Если мы хотим получить имя сессии то нужно использовать следуюший метод:

 

$session = JFactory::getSession();
echo $session->getName();

 

Это основные методы которые обычно нужны для работы с сессиями!

Ещё несколько методов которые могут нам пригодится в процессе разработки расширений для Joomla:

$session->checkToken() - проверка токена (замена JRequest::checkTocken() ) возвращает true если проверка прошла успешна

$session->clear('имя_переменной_сессии'); - удаляет переменную из хранилища сесий

$session->getId(); - получает идентификатор текущей сессии ( аналог функции session_id() )

$session->close(); - закрывает текущую сессию и сохраняет данные сессии. (аналог функции session_write_close())

$session->getExpire(); - возвращает время жизни сессии в минутах

$session->getState() - возвращает состояние текущей сессии. Если сессия активна вернет active