switon/session

Redis-backed HTTP session state with deferred writes and lifecycle events for Switon Framework

Maintainers

Package info

github.com/switon-php/session

Documentation

pkg:composer/switon/session

Statistics

Installs: 2

Dependents: 1

Suggesters: 0

Stars: 0

Open Issues: 0

v1.0.0 2026-06-06 13:43 UTC

This package is auto-updated.

Last update: 2026-06-07 05:23:26 UTC


README

Session CI PHP 8.3+

Switon's HTTP session layer for request-scoped state, Redis-backed persistence, and session lookup, update, and invalidation by ID.

Highlights

  • Session state: SessionInterface covers read, write, remove, and destroy flows for request data.
  • Lifecycle visibility: session start, update, destroy, and failure states can be observed.
  • Redis storage: session payloads can be stored in Redis with app-aware keys.
  • Session bags: BagInterface keeps component-specific keys under one namespace.
  • Session control: apps can look up, update, or revoke any session by ID.

Installation

composer require switon/session

Quick Start

use Switon\Core\Attribute\Autowired;
use Switon\Session\SessionInterface;

class AuthController
{
    #[Autowired] protected SessionInterface $session;

    public function login(int $userId): void
    {
        $this->session->set('user_id', $userId);
    }

    public function logout(): void
    {
        $this->session->destroy();
    }
}

Docs: https://docs.switon.dev/latest/session

License

MIT.