Guzzle PHP v5 Documentation
231.08 KB
49 页
0 评论
语言 | 格式 | 评分 |
---|---|---|
英语 | .pdf | 3 |
摘要 | ||
Guzzle是一个PHP HTTP客户端,简化了HTTP请求的发送和与Web服务的集成。它提供了构建查询字符串、POST请求、流式上传和下载、使用HTTP cookies、上传JSON数据等功能的简单接口。Guzzle支持同步和异步请求,使用PSR-7接口进行请求、响应和流处理,能够与其他PSR-7兼容库协同工作。Guzzle抽象了底层的HTTP传输,允许编写环境和传输无关的代码,不依赖于cURL、PHP流、套接字或非阻塞事件循环。Guzzle还提供了中间件系统,用于增强和组合客户端行为。安装Guzzle推荐使用Composer,要求PHP 5.5.0及以上版本,并支持allow_url_fopen和cURL。 | ||
AI总结 | ||
《Guzzle PHP v5 Documentation》总结了Guzzle作为PHP HTTP客户端的主要功能和用法。以下是核心观点和关键信息的简要总结:
### 1. **Guzzle概述**
- **功能**:Guzzle是一个PHP HTTP客户端,简化了HTTP请求的发送,支持同步和异步请求,使用PSR-7接口,兼容其他PSR-7库。
- **特点**:支持查询字符串构建、POST请求、大文件上传/下载、HTTP Cookies、JSON数据上传等。抽象了底层HTTP传输,不依赖特定传输方式(如cURL、PHP流、socket等)。
- **示例**:
- 同步请求:`$client->request('GET', 'https://api.github.com/user', ['auth' => ['user', 'pass']])`
- 异步请求:`$client->sendAsync($request)->then(function ($response) { echo 'I completed!'; })`
### 2. **安装与要求**
- **要求**:PHP 5.5.0及以上,`allow_url_fopen`启用,cURL >= 7.19.4(可选)。
- **安装**:推荐使用Composer安装,命令:`php composer.phar require guzzlehttp/guzzle:~6.0`,并引入Composer的自动加载器:`require 'vendor/autoload.php'`。
### 3. **请求选项**
- **stream**:设置为`true`时,流式下载响应内容,适用于大文件下载。
- **synchronous**:设置为`true`时,告知HTTP处理器将等待响应,用于优化。
- **verify**:控制SSL证书验证行为,可设置为`true`(默认,启用验证)、`false`(禁用验证,不安全)或自定义CA证书路径。
- **progress**:定义传输进度回调函数,用于监控上传/下载进度。
- **proxy**:指定HTTP代理,支持字符串(所有协议)或数组(不同协议使用不同代理)。
- **auth**:设置HTTP认证参数,支持`basic`、`digest`、`ntlm`等认证方式。
### 4. **PSR-7与流处理**
- **PSR-7兼容**:Guzzle使用PSR-7接口处理请求、响应和流,支持与其他PSR-7库集成。
- **流操作**:支持从字符串、迭代器、资源等创建流,提供流元数据访问和流装饰器(如`AppendStream`、`BufferStream`等)以扩展流功能。
### 5. **其他功能**
- **decode_content**:控制是否自动解码内容编码(如gzip、deflate),默认启用。
- **delay**:设置请求发送前的延迟时间(毫秒)。
- **expect**:控制“Expect: 100-Continue”头的行为。
### 总结:
Guzzle是一个功能强大的PHP HTTP客户端,支持多种HTTP请求操作和高级功能,如流式传输、异步请求、PSR-7兼容、SSL验证等。通过Composer安装,开发者可以轻松集成到PHP项目中,简化HTTP请求的处理。 |
P1
P2
P3
P4
P5
P6
P7
P8
P9
P10
P11
P12
下载文档到本地,方便使用
- 可预览页数已用完,剩余
37 页请下载阅读 -
文档评分