ray / psr7-module
Ray.Di 的 PSR7 模块
1.3.1
2024-01-05 01:04 UTC
Requires
- php: ^7.3 || ^8.0
- nyholm/psr7: ^1.0
- nyholm/psr7-server: ^1.0
- psr/http-message: ^1.0
- ray/aop: ^2.10.3
- ray/di: ^2.11
Requires (Dev)
- bamarni/composer-bin-plugin: ^1.4
- phpunit/phpunit: ^9.5
README
概述
Ray.Psr7Module
提供 RequestProvider
来获取 PSR7 服务器请求 对象。
安装
Composer 安装
$ composer require ray/psr7-module
模块安装
use Ray\Di\AbstractModule; use Ray\Psr7Module; class AppModule extends AbstractModule { protected function configure() { $this->install(new Psr7Module); } }
用法
ServerRequest (通用)
class Foo { public function __construct(ServerRequestInterface $serverRequest) { // retrieve cookies $cookie = $serverRequest->getCookieParams(); // $_COOKIE } }
URI
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 } }