Ray.Psr7Module
provides RequestProvider
to get the PSR7 ServerRequest object.
$ composer require ray/psr7-module
use Ray\Di\AbstractModule;
use Ray\Psr7Module;
class AppModule extends AbstractModule
{
protected function configure()
{
$this->install(new Psr7Module);
}
}
class Foo
{
public function __construct(ServerRequestInterface $serverRequest)
{
// retrieve cookies
$cookie = $serverRequest->getCookieParams(); // $_COOKIE
}
}
use Psr\Http\Message\UriInterface;
class Foo
{
public function __construct(UriInterface $uri)
{
// retrieve host name
$host = $uri->getHost();
}
}
use Psr\Http\Message\UploadedFileInterface;
use Ray\HttpMessage\Annotation\UploadFiles;
class Foo
{
/**
* @UploadFiles
*/
public function __construct(array $files)
{
// retrieve file name
$file = $files['my-form']['details']['avatar'][0]
/* @var UploadedFileInterface $file */
$name = $file->getClientFilename(); // my-avatar3.png
}
}