guzzlephp上传文件
时间: 2023-08-10 22:06:05 浏览: 77
你可以使用 Guzzle HTTP 客户端库来上传文件。以下是一个简单的示例代码:
```php
use GuzzleHttp\Client;
use GuzzleHttp\Psr7\Request;
use GuzzleHttp\Psr7\Stream;
$client = new Client();
// 构造文件流
$fileStream = new Stream(fopen('/path/to/file', 'r'));
// 发送请求
$response = $client->send(new Request('POST', 'http://example.com/upload', [
'Content-Type' => 'multipart/form-data'
], [
// 添加表单字段
[
'name' => 'field1',
'contents' => 'value1'
],
[
'name' => 'field2',
'contents' => 'value2'
],
// 添加文件字段
[
'name' => 'file',
'contents' => $fileStream,
'filename' => 'filename.jpg'
]
]));
// 处理响应
echo $response->getBody();
```
在上面的示例代码中,我们首先通过 `new Stream(fopen('/path/to/file', 'r'))` 构造了一个文件流,然后将其添加到了请求中的文件字段中。同时,我们也添加了其他表单字段。最后通过 `$client->send()` 发送请求,并处理响应。
注意,在实际使用中,你需要根据具体的上传接口要求来设置请求头和参数。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![unitypackage](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![unitypackage](https://img-home.csdnimg.cn/images/20210720083646.png)