PhpでGuzzleを使用してファイルを送信する方法は何ですか?

Guzzleを使用してファイルを送信するには、Guzzleのmultipartリクエストメソッドを使用します。以下に、Guzzleを使用してファイルを送信する方法を示すコード例があります。

require 'vendor/autoload.php'; //加载Guzzle库

use GuzzleHttp\Client;
use GuzzleHttp\Psr7\Request;
use GuzzleHttp\Psr7;

// 创建一个Guzzle客户端
$client = new Client();

// 要上传的文件
$file = '/path/to/file.jpg';

// 发送文件
$response = $client->request('POST', 'http://example.com/upload', [
    'multipart' => [
        [
            'name'     => 'file',
            'contents' => fopen($file, 'r'),
            'filename' => 'file.jpg'
        ]
    ],
]);

// 输出响应内容
echo $response->getBody();

上記の例では、まずGuzzleクライアントを作成しました。次に、アップロードするファイルのパスを指定し、multipartオプションを使用してファイルをリクエストに追加しました。最後に、http://example.com/upload にPOSTリクエストを送信して、レスポンスのコンテンツを出力しました。

注意してください、guzzlehttp/guzzleライブラリをインストールする必要があるかもしれません。Composerを使ってインストールできます。

composer require guzzlehttp/guzzle

これにより、Guzzleを使用してファイルを送信できるようになります。

コメントを残す 0

Your email address will not be published. Required fields are marked *