for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace Shetabit\Multipay;
class Request
{
/**
* HTTP request's data.
*
* @var array
*/
protected $requestData = [];
* HTTP POST data.
protected $postData = [];
* HTTP GET data.
protected $getData = [];
* Overwritten methods
protected static $overwrittenMethods = [];
* Request constructor.
public function __construct()
$this->requestData = $_REQUEST;
$this->postData = $_POST;
$this->getData = $_GET;
}
* Retrieve HTTP request data.
* @param string $name
* @return mixed|null
public static function input(string $name)
if (isset(static::$overwrittenMethods['input'])) {
return (static::$overwrittenMethods['input'])($name);
return (new static)->requestData[$name] ?? null;
* Retrieve HTTP POST data.
public static function post(string $name)
if (isset(static::$overwrittenMethods['post'])) {
return (static::$overwrittenMethods['post'])($name);
return (new static)->postData[$name] ?? null;
* Retrieve HTTP GET data.
public static function get(string $name)
if (isset(static::$overwrittenMethods['get'])) {
return (static::$overwrittenMethods['get'])($name);
return (new static)->getData[$name] ?? null;
* @param string $method
* @param $callback
public static function overwrite($method, $callback)
static::$overwrittenMethods[$method] = $callback;