PHPackages                             webino/request - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [HTTP &amp; Networking](/categories/http)
4. /
5. webino/request

ActiveLibrary[HTTP &amp; Networking](/categories/http)

webino/request
==============

Simple PHP environment request implementation.

117PHP

Since Jun 24Pushed 6y ago1 watchersCompare

[ Source](https://github.com/webino/request)[ Packagist](https://packagist.org/packages/webino/request)[ RSS](/packages/webino-request/feed)WikiDiscussions develop Synced 3d ago

READMEChangelogDependenciesVersions (2)Used By (0)

Webino Request
==============

[](#webino-request)

Simple PHP environment request implementation. \[WIP\]

[![Build Status](https://camo.githubusercontent.com/128469dd93e9314a5bbac4b31ca5aba3538289fec942e1da15446a8216c998a0/68747470733a2f2f696d672e736869656c64732e696f2f7472617669732f776562696e6f2f726571756573742f6d61737465722e7376673f7374796c653d666f722d7468652d6261646765)](http://travis-ci.org/webino/request "Master Build Status")[![Coverage Status](https://camo.githubusercontent.com/54102861022a54b9def5c90e072d8503fd1416f6b430788216a1b60d7382ae53/68747470733a2f2f696d672e736869656c64732e696f2f636f766572616c6c732f6769746875622f776562696e6f2f726571756573742f6d61737465722e7376673f7374796c653d666f722d7468652d6261646765)](https://coveralls.io/github/webino/request?branch=master "Master Coverage Status")[![Code Quality](https://camo.githubusercontent.com/a7c01c693481b2be62c05d36f48721ddd57944b6758438eff675f01435fe525f/68747470733a2f2f696d672e736869656c64732e696f2f7363727574696e697a65722f672f776562696e6f2f726571756573742f6d61737465722e7376673f7374796c653d666f722d7468652d6261646765)](https://scrutinizer-ci.com/g/webino/request/?branch=master "Master Code Quality")[![Latest Stable Version](https://camo.githubusercontent.com/41b0c5cb42ba8e9c4cb0d9776ffa3c10c750ae3c86099fb1a59ebcf032fe67ca/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f7461672f776562696e6f2f726571756573742e7376673f6c6162656c3d535441424c45267374796c653d666f722d7468652d6261646765)](https://packagist.org/packages/webino/request)

Recommended Usage
-----------------

[](#recommended-usage)

Request data for application dispatch.

Setup
-----

[](#setup)

[![PHP from Packagist](https://camo.githubusercontent.com/0fcb591dd5fccf8c464b337eecab4e22c9736603db84ab7cfc59ef9cd07fdf4e/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f776562696e6f2f726571756573742e7376673f7374796c653d666f722d7468652d6261646765)](https://php.net "Required PHP version")

```
composer require webino\request
```

Quick Use
---------

[](#quick-use)

Getting request object for current execution context:

```
use Webino\InstanceContainer;
use Webino\HttpRequest;
use Webino\ConsoleRequest;
use Webino\RequestInterface;

$container = new InstanceContainer;

/** @var RequestInterface $request */
$request = $container->get(RequestInterface::class);

if ($request instanceof HttpRequest) {

} elseif ($request instanceof ConsoleRequest) {

}
```

Making HTTP request:

```
use Webino\InstanceContainer;
use Webino\HttpRequest;

$container = new InstanceContainer;

/** @var HttpRequest $request */
$request = $container->make(HttpRequest::class, HttpRequest::defaults([
    HttpRequest::QUERY_STRING => 'foo=bar&baz=bam',
    HttpRequest::SCRIPT_NAME => '/example/index.php',
    HttpRequest::SCRIPT_FILENAME => '/var/www/html/example/index.php',
    HttpRequest::URI => '/example/some-route'
]));
```

Making console request:

```
use Webino\InstanceContainer;
use Webino\ConsoleRequest;

$container = new InstanceContainer;

/** @var ConsoleRequest $request */
$request = $container->make(ConsoleRequest::class, ConsoleRequest::defaults([
    ConsoleRequest::COMMAND => 'foo --bar baz',
    ConsoleRequest::SCRIPT_FILENAME => '/var/www/html/test/index.php',
]));
```

API
---

[](#api)

**RequestInterface**

- *const* TIME
    Request time float option.
- *const* TIME\_DEFAULT
    Default request time float, example value.
- *const* SCRIPT\_FILENAME
    Executed script file name string option.
- *const* SCRIPT\_FILENAME\_DEFAULT
    Default executed script file name, example value.
- *float* getRequestTime()
    Returns HTTP request time.
- *string* getScriptFileName()
    Returns executed script file name.

**HttpRequest**

- *const* SCRIPT\_NAME
    Executed script name string option.
- *const* SCRIPT\_NAME\_DEFAULT
    Executed script name, example value.
- *const* GATEWAY\_INTERFACE
    Gateway interface string option.
- *const* GATEWAY\_INTERFACE\_DEFAULT
    Gateway interface, example value.
- *const* SERVER\_SOFTWARE
    Server software string option.
- *const* SERVER\_SOFTWARE\_APACHE
    Apache server software, example value.
- *const* SERVER\_SOFTWARE\_NGINX
    Nginx server software, example value.
- *const* HOST
    Server host name string option.
- *const* HOST\_LOCAL
    Local server host name, example value.
- *const* HOST\_IP
    Server IP address string option.
- *const* HOST\_IP\_LOCAL
    Local server IP address, example value.
- *const* URI
    Request URI string option.
- *const* URI\_DEFAULT
    Request URI, example value.
- *const* METHOD
    Request method string option.
- *const* METHOD\_GET
    GET request method, example value.
- *const* METHOD\_POST
    POST request method, example value.
- *const* SCHEME
    Request scheme string option.
- *const* SCHEME\_HTTP
    HTTP request scheme, example value.
- *const* SCHEME\_HTTPS
    HTTPS request scheme, example value.
- *const* PORT
    Request port string option.
- *const* PORT\_HTTP
    HTTP request port, example value.
- *const* PORT\_HTTPS
    HTTPS request port, example value.
- *const* QUERY\_STRING
    Query string option.
- *const* QUERY\_STRING\_DEFAULT
    Query string, example value.
- *const* ACCEPT
    Accept header string option.
- *const* ACCEPT\_HTML
    Accept HTML header, example value.
- *const* ACCEPT\_LANGUAGE
    Accept language header string option.
- *const* ACCEPT\_LANGUAGE\_DEFAULT
    Default accept language, example value.
- *const* ACCEPT\_CHARSET
    Accept charset header string option.
- *const* ACCEPT\_CHARSET\_DEFAULT
    Default charset header, example value.
- *const* ACCEPT\_ENCODING
    Accept encoding header string option.
- *const* ACCEPT\_ENCODING\_DEFAULT
    Default accept encoding header, example value.
- *const* USER\_AGENT
    User agent header string option.
- *const* USER\_AGENT\_DEFAULT
    Default user agent header, example value.
- *const* REFERER
    Referer header string option.
- *const* REFERER\_DEFAULT
    Default referer header, example value.
- *const* REMOTE\_IP
    Remote IP address string option.
- *const* REMOTE\_IP\_LOCAL
    Local remote IP address, example value.
- *const* REMOTE\_PORT
    Remote port string option.
- *const* REMOTE\_PORT\_DEFAULT
    Default remote port, example value.
- *const* REQUESTED\_WITH
    The x-requested-with header string option.
- *const* REQUESTED\_WITH\_AJAX
    The Ajax x-requested-with header, example value.
- *string* getRoutePath()
    Returns route path.
- *string* getScriptName()
    Returns executed script name.
- *string* getMethod()
    Returns HTTP request method.
- *string* getHost()
    Returns HTTP host name.
- *string* getHostIP()
    Returns HTTP host IP address.
- *string* getScheme()
    Returns HTTP request scheme.
- *bool* isHttps()
    Returns true when request scheme is HTTPS.
- *string* getPort()
    Returns HTTP request port.
- *string* getQueryString()
    Returns HTTP request query string.
- *string* getBasePath()
    Returns HTTP root.
- *string* getUri()
    Returns request URI.
- *string* getGatewayInterface()
    Returns server gateway interface identifier.
- *string* getServerSoftware()
    Returns server software identifier.
- *string* getAccept()
    Returns HTTP accept header value.
- *string* getAcceptLanguage()
    Returns HTTP accept language header value.
- *string* getAcceptCharset()
    Returns HTTP accept charset header value.
- *string* getAcceptEncoding()
    Returns HTTP accept encoding header value.
- *string* getUserAgent()
    Returns HTTP request user agent.
- *string* getReferer()
    Returns HTTP referer header value.
- *string* getRemoteIP()
    Returns HTTP remote IP address.
- *string* getRemotePort()
    Returns HTTP remote port.
- *bool* isAjax()
    Returns true when request was made by Ajax.
- *array* *static* defaults(*array* $overrides = \[\])
    Returns default HTTP request options, example values.

**ConsoleRequest**

- *const* COMMAND
    Console command string option.
- *string* getCommand()
    Returns console command.
- *array* *static* defaults(*array* $overrides = \[\])
    Returns default console request options, example values.

Development
-----------

[](#development)

[![Build Status](https://camo.githubusercontent.com/9b3c4a43ea2b1fd5ecf1f5d9a99901974659170c12f450059b0594a74820c0b7/68747470733a2f2f696d672e736869656c64732e696f2f7472617669732f776562696e6f2f726571756573742f646576656c6f702e7376673f7374796c653d666f722d7468652d6261646765)](http://travis-ci.org/webino/request "Develop Build Status")[![Coverage Status](https://camo.githubusercontent.com/729b520617648233f5e0007210c6420aba8d05c0b01f35190882e30d95917a16/68747470733a2f2f696d672e736869656c64732e696f2f636f766572616c6c732f6769746875622f776562696e6f2f726571756573742f646576656c6f702e7376673f7374796c653d666f722d7468652d6261646765)](https://coveralls.io/github/webino/request?branch=develop "Develop Coverage Status")[![Code Quality](https://camo.githubusercontent.com/1ed6ea9ebbe5004a2aa9b9a30b2ef6991d504ac88015c49b2a50ace29230ae4a/68747470733a2f2f696d672e736869656c64732e696f2f7363727574696e697a65722f672f776562696e6f2f726571756573742f646576656c6f702e7376673f7374796c653d666f722d7468652d6261646765)](https://scrutinizer-ci.com/g/webino/request/?branch=develop "Develop Code Quality")[![Latest Unstable Version](https://camo.githubusercontent.com/50ace6032a4255f6fd5bb1e8f1958aabd57e20829d31856f1af98e6a8f9e3347/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f7461672d7072652f776562696e6f2f726571756573742e7376673f6c6162656c3d50524556494557267374796c653d666f722d7468652d6261646765)](https://packagist.org/packages/webino/request "Packagist")

Static analysis:

```
composer analyse
```

Coding style check:

```
composer check
```

Coding style fix:

```
composer fix
```

Testing:

```
composer test
```

Git pre-commit setup:

```
ln -s ../../pre-commit .git/hooks/pre-commit
```

Addendum
--------

[](#addendum)

[![License](https://camo.githubusercontent.com/cdb289b96dc3bae5023c5fe71de1093371bed7990d925f6c9022b609426643f3/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f776562696e6f2f726571756573742e7376673f7374796c653d666f722d7468652d6261646765)](https://github.com/webino/request/blob/master/LICENSE.md "BSD-3-Clause License")[![Total Downloads](https://camo.githubusercontent.com/3a18d921c6f6e2182219577ce9185117296d5c494faf4bfcf635f14b6964a210/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f776562696e6f2f726571756573742e7376673f7374796c653d666f722d7468652d6261646765)](https://packagist.org/packages/webino/request "Packagist")[![GitHub code size in bytes](https://camo.githubusercontent.com/bf566da3bbfb904d629cca51cef63d79ab5574347ba202fe28f1e530b0189434/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c616e6775616765732f636f64652d73697a652f776562696e6f2f726571756573742e7376673f7374796c653d666f722d7468652d6261646765)](https://camo.githubusercontent.com/bf566da3bbfb904d629cca51cef63d79ab5574347ba202fe28f1e530b0189434/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c616e6775616765732f636f64652d73697a652f776562696e6f2f726571756573742e7376673f7374796c653d666f722d7468652d6261646765)

Please, if you are interested in this library report any issues and don't hesitate to contribute. We will appreciate any contributions on development of this library.

[![GitHub issues](https://camo.githubusercontent.com/a2fe70a6ea393cbab8cae17fe83d867cd1d07f1d0d14089454ac2c7772b800aa/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6973737565732f776562696e6f2f726571756573742e7376673f7374796c653d666f722d7468652d6261646765)](https://github.com/webino/request/issues)[![GitHub forks](https://camo.githubusercontent.com/6704c6e9daa87f5813a02e72f958ce3ef57354d409b8a37f0d7e5fd8a6af78ea/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f666f726b732f776562696e6f2f726571756573742e7376673f6c6162656c3d466f726b267374796c653d666f722d7468652d6261646765)](https://github.com/webino/request)

###  Health Score

20

—

LowBetter than 14% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity7

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity39

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/c4a88e425997c1af6050f86801610a5291e7ea9f4ad58654df74d9106fb09637?d=identicon)[Webino](/maintainers/Webino)

---

Top Contributors

[![bacinsky](https://avatars.githubusercontent.com/u/3078875?v=4)](https://github.com/bacinsky "bacinsky (12 commits)")

---

Tags

libraryrequestv3webinowip

### Embed Badge

![Health badge](/badges/webino-request/health.svg)

```
[![Health](https://phpackages.com/badges/webino-request/health.svg)](https://phpackages.com/packages/webino-request)
```

###  Alternatives

[friendsofsymfony/rest-bundle

This Bundle provides various tools to rapidly develop RESTful API's with Symfony

2.8k73.3M319](/packages/friendsofsymfony-rest-bundle)[php-http/discovery

Finds and installs PSR-7, PSR-17, PSR-18 and HTTPlug implementations

1.3k309.5M1.2k](/packages/php-http-discovery)[nyholm/psr7

A fast PHP7 implementation of PSR-7

1.3k235.4M2.4k](/packages/nyholm-psr7)[pusher/pusher-php-server

Library for interacting with the Pusher REST API

1.5k94.8M293](/packages/pusher-pusher-php-server)[spatie/crawler

Crawl all internal links found on a website

2.8k16.3M52](/packages/spatie-crawler)[react/http

Event-driven, streaming HTTP client and server implementation for ReactPHP

78126.4M414](/packages/react-http)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
