garveen / fastcgi
An effective FastCGI to psr-7 adapter
Installs: 7 223
Dependents: 8
Suggesters: 0
Security: 0
Stars: 6
Watchers: 3
Forks: 1
Open Issues: 0
Requires
- guzzlehttp/psr7: ^1.3
- psr/http-message: ^1.0
This package is not auto-updated.
Last update: 2024-12-22 02:06:39 UTC
README
This library is an effective FastCGI
to PSR-7
adapter.
Install
composer require garveen/fastcgi
Usage
use Garveen\FastCgi\FastCgi; use Psr\Http\Message\ServerRequestInterface; // First of all, define 3 callbacks // When a request is ready, this library will call $requestCallback: $requestCallback = function (ServerRequestInterface $serverRequest) { // Do something... // And the response must be instance of Psr\Http\Message\ResponseInterface // This library provides Garveen\FastCgi\Response return new Response; }; // After this library got the response, $sendCallback will be called: $sendCallback = function (int $fd, string $data) { // send $data to downstream fwrite($downstreams[$fd], $data); }; // At the end, if keepalive is not set, there will be $closeCallback: $closeCallback = function (int $fd) { fclose($downstreams[$fd]); }; // The instance $fastcgi = new FastCgi($requestCallback, $sendCallback, $closeCallback, $logger); // Once you have recevied a FastCGI network-package, just pass it to the instance: $fastcgi->receive(int $fd, string $data);