PHP code example of commandstring / reactphp-cookies

1. Go to this page and download the library: Download commandstring/reactphp-cookies library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

commandstring / reactphp-cookies example snippets


$cookieController = new CookieController(null);

$cookie = $cookieController->cookie($req, $res);

$cookie->set("token", "123456", 1, 15, 13, "/app", "app.domain.com");

$cookie->get("token");

$cookie->delete("token", "/app", "app.domain.com");



use CommandString\Cookies\CookieController;
use Psr\Http\Message\ServerRequestInterface;
use React\Http\HttpServer;
use React\Http\Message\Response;
use React\Socket\SocketServer;

okie($req, $res);

    $parts = explode("/", $req->getRequestTarget());
    $partsNum = count($parts) - 1;

    $invalidReq = function (string $message) use (&$res): Response
    {
        $res->withStatus(403);
		$res = $res->withHeader('content-type', 'text-plain');
		$res->getBody()->write($message);
    };

    if ($parts[1] === "set") {
        if ($partsNum !== 3) {
            return $invalidReq("Invalid URI, example `/set/id/123456`");
        }

        $cookie->set($parts[2], $parts[3]);
        $res->getBody()->write("Set cookie {$parts[2]} to {$parts[3]}");
    }

    if ($parts[1] === "get") {
        if ($partsNum !== 2) {
            return $invalidReq("Invalid URI, example `/get/id`");
        }

        if ($cookie->exists($parts[2])) {
            $res->getBody()->write("Found cookie {$parts[2]}, it is set to {$cookie->get($parts[2])}");
        } else {
            $res->getBody()->write("Cookie {$parts[2]} does not exist");
        }
    }

    if ($parts[1] === "delete") {
        if ($partsNum !== 2) {
            return $invalidReq("Invalid URI, example `/delete/id`");
        }

        if ($cookie->exists($parts[2])) {
            $cookie->delete($parts[2]);
            $res->getBody()->write("Deleted cookie {$parts[2]}");
        } else {
            $res->getBody()->write("Cooke {$parts[2]} does not exist");
        }
    }
    
    return $res;
});

$socket = new SocketServer('127.0.0.1:8000');
$http->listen($socket);