本文整理汇总了PHP中Psr\Http\Message\StreamInterface::createStream方法的典型用法代码示例。如果您正苦于以下问题:PHP StreamInterface::createStream方法的具体用法?PHP StreamInterface::createStream怎么用?PHP StreamInterface::createStream使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Psr\Http\Message\StreamInterface
的用法示例。
在下文中一共展示了StreamInterface::createStream方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: __construct
/**
* Request constructor.
*
* Array of handlers for HTTP methods may look like this:
* $methodHandlers = [
* methodHandlerObject,
* anotherMethodHandlerObject
* ];
*
* @param StreamInterface $stream Object which contains incoming stream.
* @param UriInterface $uri Object which contains URI parts.
* @param UploadedFileInterface $uploadedFile UploadedFile instance.
* @param array $methodHandlers Handlers for HTTP methods.
*/
public function __construct(StreamInterface $stream, UriInterface $uri, UploadedFileInterface $uploadedFile, array $methodHandlers)
{
// Message construct.
parent::__construct();
// Store UploadedFile instance.
$this->uploadedFile = $uploadedFile;
// Store Stream instance.
$this->stream = $stream->createStream('php://input', 'rb');
// Server environment.
$this->serverEnv = $this->normalizeServer($_SERVER);
// Headers.
$this->headers = $this->normalizeHeaders($this->serverEnv);
// URI.
$this->uri = $this->createUriFromGlobals($uri);
// HTTP real method.
$this->realMethod = strtoupper($this->getFromServer('REQUEST_METHOD'));
// HTTP replaced method (by html form input field '_method').
$this->replacedMethod = strtoupper(strtoupper($this->input('_method')));
// Cookie if present.
$this->cookies = isset($_COOKIE) ? $_COOKIE : [];
// Get params if present.
$this->queryParams = isset($_GET) ? $_GET : [];
// processing incoming HTTP requests by methods:
// POST, PUT, PATCH, DELETE
if ($this->getMethod() !== 'GET') {
// register HTTP methods handlers
$this->registerMethodHandler($methodHandlers);
// notification of all handlers of this incoming request
$requestBody = $this->notify($this);
// get parsed body (if exists) from handler
$this->parsedBody = $requestBody['parsedBody'];
// get uploaded files (if exists) from handler
if (!empty($requestBody['uploadedFiles'])) {
$this->uploadedFiles = $this->normalizeUploadedFiles($requestBody['uploadedFiles']);
}
}
}