ahmard / swoose
Swoole Session
dev-develop
2021-07-20 12:18 UTC
Requires
- php: ^8.0
- ext-mbstring: *
- ext-openssl: *
- ext-swoole: *
- symfony/cache: ^5.3
Requires (Dev)
- ahmard/swotch: ^0.0.1
- phpstan/phpstan: ^0.12.92
- swoole/ide-helper: ^4.6
This package is auto-updated.
Last update: 2024-12-20 20:22:08 UTC
README
A Swoole http session library.
This library is experimental
Installation
composer require ahmard/swoose
Usage
use Swoole\Http\Request; use Swoole\Http\Response; use Swoole\Http\Server; use Swoose\Config; use Swoose\Manager; use Symfony\Component\Cache\Adapter\FilesystemAdapter; require 'vendor/autoload.php'; $server = new Server("127.0.0.1", 9501); $cache = new FilesystemAdapter(directory: __DIR__ . '/.temp'); $sessionConfig = Config::create() ->setAdapter($cache); $requestHandler = function (Request $request, Response $response) use ($sessionConfig) { $session = Manager::create($sessionConfig, $request, $response)->start(); $session->put('visit', ($session->get('visit') ?? 0) + 1 ); if (!$session->has('name')) { $session->put('name', 'Ahmard'); var_dump('Guest'); } else { var_dump('User'); } $response->header("Content-Type", "text/plain"); $response->end("Hello {$session->get('name')} @ {$session->get('visit')}\n"); }; $server->on("request", $requestHandler); $server->on('start', function () { echo "Swoole http server is started at http://127.0.0.1:9501\n"; }); $server->start();