mirror of
https://github.com/bitinflow/expose.git
synced 2026-03-13 13:35:54 +00:00
36 lines
675 B
PHP
36 lines
675 B
PHP
<?php
|
|
|
|
namespace App\Http;
|
|
|
|
use Psr\Http\Message\RequestInterface;
|
|
|
|
class QueryParameters
|
|
{
|
|
/** @var \Psr\Http\Message\RequestInterface */
|
|
protected $request;
|
|
|
|
public static function create(RequestInterface $request)
|
|
{
|
|
return new static($request);
|
|
}
|
|
|
|
public function __construct(RequestInterface $request)
|
|
{
|
|
$this->request = $request;
|
|
}
|
|
|
|
public function all(): array
|
|
{
|
|
$queryParameters = [];
|
|
|
|
parse_str($this->request->getUri()->getQuery(), $queryParameters);
|
|
|
|
return $queryParameters;
|
|
}
|
|
|
|
public function get(string $name): string
|
|
{
|
|
return $this->all()[$name] ?? '';
|
|
}
|
|
}
|