proteins / request
Handles the HTTP request for the current execution
Installs: 42
Dependents: 1
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
pkg:composer/proteins/request
Requires
- php: ^7.2
- proteins/filter: ^1.0.0
- proteins/negotiation: ^1.0.0
- proteins/structure: ^1.0.0
- proteins/url: ^1.0.0
This package is auto-updated.
Last update: 2025-10-29 02:09:42 UTC
README
Protein | Request
Handles the HTTP request for the current execution.
Install
composer require proteins/request
Require the class via :
use Proteins\Request;
Getting an input parameter
Inputs passed to the request can be retrieved with the Request::input($key=null, $default=null) method.
The function searches for an input named $key in the $_REQUEST superglobal, if not found returns the $default value passed (resolved if $default is callable).
If you call Request::input() it will returns an associative array of all $_REQUEST content.
$_GET, $_POST, $_FILES, $_COOKIE can be accessed directly with the Request::get/post/files/cookie methods.
echo "Hello, ", Request::input('name','Friend'), '!';
GET /?name=Alyx
Hello, Alyx!
Getting the URL / URI
The Request::URL() method returns the current request URL, complete with host and protocol.
The Request::URI() method returns the current request URL, without host and protocol and relative to the front controller path.
DocumentRoot : /web/mysite.com/public
Front Controller Path : /web/mysite.com/public/foo/bar/index.php
Request::URL() –> http://mysite.com/foo/bar/someroute
Request::URI() –> /someroute
Getting the HTTP method
The Request::method() method returns the current request HTTP method, lowercase.
echo Request::method();
get
Getting RAW/JSON data
If data was passed with the request, the method Request::data($key=null, $default=null) will retrieve all (if called with no parameters) data or a single property if $key is passed.
If requested data was empty, $default will be returned (resolved if callable is passed).
If request data is passed with the Content-Type: application/json header, will be automatically decoded.
POST /
Content-Type: application/json
{
"name": "Chell"
}
print_r( Request::data() );
stdClass Object
(
[name] => Chell
)
