<?php
// Guzzleクライアントを初期化する
$client = new GuzzleHttp\Client();
// リクエストのタイプを指定する (POSTかGETか)
$requestType = "POST"; // または "GET"
if ($requestType === "POST") {
// POSTリクエストを行う場合
$response = $client->request('POST', 'https://example.com/api', [
'form_params' => [
'param1' => 'value1',
'param2' => 'value2'
]
]);
} else {
// GETリクエストを行う場合
$response = $client->request('GET', 'https://example.com/api');
}
// レスポンスのタイプを指定する (jsonかhtmlか)
$responseType = "json"; // または "html"
if ($responseType === "json") {
// jsonをレスポンスとして返す場合
$response = $response->getBody()->getContents();
} else {
// htmlをレスポンスとして返す場合
$response = $response->getBody();
}
// レスポンスを出力する
echo $response;
簡単ですね、curlより。
複数同時にもできるらしい。
Guzzleを使用する準備
Guzzleを使用するには、Composerを使用してGuzzleをインストールする必要があります。ComposerはPHP用のパッケージマネージャーです。
以下の手順に従って、Guzzleをインストールして使用することができます。
- 事前に、Composerをインストールしておく必要があります。Composerのインストール方法については、以下のリンク先を参照してください。 https://getcomposer.org/download/
- 次に、プロジェクトのルートディレクトリで、以下のコマンドを実行してGuzzleをインストールします。
composer require guzzlehttp/guzzle
- インストールが完了したら、Guzzleを使用するPHPスクリプトの中で、以下のように
GuzzleHttp\Client
クラスを読み込んでください。
<?php
require 'vendor/autoload.php';
// Guzzleクライアントを初期化する
$client = new GuzzleHttp\Client();
// APIを呼び出す処理を記述する
Guzzleってどんなもの
Guzzleは、PHP用のHTTPクライアントライブラリです。APIやWebサイトへのリクエストを行い、レスポンスを受け取ることができます。
Guzzleは、APIを呼び出す際に便利な機能を提供しています。例えば、以下のような機能があります。
パラメータを含むGETやPOSTリクエストを行うことができる。
ヘッダを含むリクエストを行うことができる。
フォームデータやJSONデータをリクエストボディとして送信することができる。
複数のAPIを並行して呼び出すことができる。
エラーハンドリングやタイムアウト制御ができる。
Guzzleを使用することで、APIを呼び出す際にcURLを使用するよりも簡単になります。また、Guzzleを使用することで、複数のAPIを並行して呼び出すことができるようになります。