vaibhavpandeyvpz / sandesh
PSR-7 and PSR-17 implementation, works with PHP >= 5.3.
2.0.2
2020-04-23 11:12 UTC
Requires
- php: ^7.0
- psr/http-factory: ^1.0
- psr/http-message: ^1.0
Requires (Dev)
- phpunit/phpunit: ^4.0 || ^5.0
Provides
README
PSR-7 and PSR-17 implementation, works with PHP >= 7.0.
Sandesh:
संदेश
(message)
Install
composer require vaibhavpandeyvpz/sandesh
Usage
<?php /** * @desc Creates an instance of Psr\Http\Message\RequestInterface. */ $request = (new Sandesh\RequestFactory()) ->createRequest('POST', 'https://api.example.com/user/save'); /** * @desc Creates an instance of Psr\Http\Message\ServerRequestInterface. */ $request = (new Sandesh\ServerRequestFactory()) ->createServerRequest('POST', 'https://api.example.com/user/save', $_SERVER); /** * @desc Creates an instance of Psr\Http\Message\ResponseInterface. */ $response = (new Sandesh\ResponseFactory()) ->createResponse(404); /** * @desc Creates an instance of Psr\Http\Message\StreamInterface. */ $stream = (new Sandesh\StreamFactory()) ->createStream(); // or $stream = (new Sandesh\StreamFactory()) ->createStreamFromFile('/path/to/file'); // or $stream = (new Sandesh\StreamFactory()) ->createStreamFromResource(fopen('php://input', 'r')); /** * @desc Creates an instance of Psr\Http\Message\UploadedFileInterface. */ $stream = (new Sandesh\StreamFactory()) ->createStreamFromFile($_FILES[0]['tmp_name']); $request = (new Sandesh\UploadedFileFactory()) ->createUploadedFile( $stream, $_FILES[0]['size'], $_FILES[0]['error'], $_FILES[0]['name'], $_FILES[0]['type']); /** * @desc Creates an instance of Psr\Http\Message\UriInterface. */ $uri = (new Sandesh\UriFactory()) ->createUri('http://domain.tld:9090/subdir?test=true#phpunit');
Bonus
<?php /** * @desc Parse Set-Cookie header(s) and create an instance of Sandesh\CookieInterface. */ $cookie = (new Sandesh\CookieFactory()) ->createCookie('PHPSESS=1234567890; Domain=domain.tld; Expires=Wed, 21 Oct 2015 07:28:00 GMT; HttpOnly; Max-Age=86400; Path=/admin; Secure'); /** * @desc After making changes you can just cast it to a RFC-6265 valid string as show below. */ $header = (string)$cookie;
Documentation
To view detailed instructions, please visit the Wiki.
License
See LICENSE file.