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();