Guzzle 是一个 PHP HTTP 客户端库

7.0.0-beta.1 2019-12-30 14:24 UTC

README

Latest Version Build Status Total Downloads

Guzzle 是一个 PHP HTTP 客户端,使得发送 HTTP 请求变得简单,并且可以轻松集成到 web 服务中。

  • 提供简单的接口来构建查询字符串、POST 请求、大文件上传和下载、使用 HTTPCookies、上传 JSON 数据等...
  • 可以使用相同的接口发送同步和异步请求。
  • 使用 PSR-7 接口进行请求、响应和流的处理。这允许你使用其他与 PSR-7 兼容的库与 Guzzle 一起工作。
  • 抽象了底层的 HTTP 传输,允许你编写与环境无关的代码;即,不需要对 cURL、PHP 流、套接字或非阻塞事件循环有硬依赖。
  • 中间件系统允许你增强和组合客户端行为。
$client = new \GuzzleHttp\Client();
$response = $client->request('GET', 'https://api.github.com/repos/guzzle/guzzle');

echo $response->getStatusCode(); // 200
echo $response->getHeaderLine('content-type'); // 'application/json; charset=utf8'
echo $response->getBody(); // '{"id": 1420053, "name": "guzzle", ...}'

// Send an asynchronous request.
$request = new \GuzzleHttp\Psr7\Request('GET', 'http://httpbin.org');
$promise = $client->sendAsync($request)->then(function ($response) {
    echo 'I completed! ' . $response->getBody();
});

$promise->wait();

帮助和文档

安装 Guzzle

推荐通过 Composer 安装 Guzzle。

composer require guzzlehttp/guzzle

版本指南