You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Requests is a HTTP library written in PHP, for human beings. It is roughly
based on the API from the excellent Requests Python
library. Requests is ISC
Licensed (similar to
the new BSD license) and has no dependencies, except for PHP 5.6.20+.
Despite PHP's use as a language for the web, its tools for sending HTTP requests
are severely lacking. cURL has an
interesting API, to say the
least, and you can't always rely on it being available. Sockets provide only low
level access, and require you to build most of the HTTP response parsing
yourself.
We all have better things to do. That's why Requests was born.
Requests allows you to send HEAD, GET, POST, PUT, DELETE,
and PATCH HTTP requests. You can add headers, form data, multipart files,
and parameters with basic arrays, and access the response data in the same way.
Requests uses cURL and fsockopen, depending on what your system has available,
but abstracts all the nasty stuff out of your way, providing a consistent API.
Features
International Domains and URLs
Browser-style SSL Verification
Basic/Digest Authentication
Automatic Decompression
Connection Timeouts
Installation
Install with Composer
If you're using Composer to manage
dependencies, you can add Requests with it.
Requests strives to have 100% code-coverage of the library with an extensive
set of tests. We're not quite there yet, but we're getting close.
Requests and PSR-7/PSR-18
PSR-7 describes common interfaces for representing HTTP messages.
PSR-18 describes a common interface for sending HTTP requests and receiving HTTP responses.
Both PSR-7 as well as PSR-18 were created after Requests' conception.
At this time, there is no intention to add a native PSR-7/PSR-18 implementation to the Requests library.
However, the amazing Artur Weigandt has created a package, which allows you to use Requests as a PSR-7 compatible PSR-18 HTTP Client.
If you are interested in a PSR-7/PSR-18 compatible version of Requests, we highly recommend you check out this package.
Contribute
Contributions to this library are very welcome. Please read the Contributing guidelines to get started.
About
Requests for PHP is a humble HTTP request library. It simplifies how you interact with other sites and takes away all your worries.