К содержанию
Medusa
Документация

Сессии

Medusa\Http\Session используется для хранения и чтения данных сессии.

Инициализация класса

Во время HTTP-запроса старт сессии происходит автоматически на старте загрузки приложения вызовом метода Medusa\Http\Session::start(), а в CLI после подключения www/medusa/index.php сессия автоматически не запускается, так как HTTP-слой инициализируется только для веб-запросов. В таких случаях сессию нужно запускать вручную до создания объекта.

use Medusa\Http\Session;

Session::start();

$session = new Session();

Установка значения

Метод $session->set($key, $value) сохраняет значение по ключу.

$sessionSet = $session->set('user_id', 1);

if ($sessionSet) {
    echo 'Сессия "user_id" установлена';
} else {
    echo 'Не удалось установить сессию "user_id"';
}

Проверка существования ключа

Метод $session->has($key) проверяет наличие ключа в сессии.

$sessionExists = $session->has('user_id');

if ($sessionExists) {
    echo 'Сессия "user_id" существует';
} else {
    echo 'Сессия "user_id" не существует';
}

Получение значения

Метод $session->get($key, $default = null) возвращает значение по ключу или значение по умолчанию, если ключ отсутствует.

$userId = $session->get('user_id', 0);

echo sprintf('Сессия "user_id" содержит значение %d', $userId);

Удаление значения

Метод $session->remove($key) удаляет ключ вместе со значением.

$sessionRemoved = $session->remove('user_id');

if ($sessionRemoved) {
    echo 'Сессия "user_id" удалена';
} else {
    echo 'Не удалось удалить сессию "user_id"';
}