HTTPリクエストの送信やWeb APIの呼び出しに使える、cURLをシンプルなオブジェクト指向APIでラップしたPHPライブラリです。
guzzle/guzzle
同期・非同期リクエストの送信やWebサービスとの連携に使える、拡張性の高いPHP HTTPクライアントです。
- スター
- 23,447
- フォーク
- 2,393
- 未解決の Issue
- 4
- 最終コミット
- 13 日前
これは何?
Guzzleは、HTTPリクエストの送信を簡単にし、Webサービスとの連携をシンプルにするPHP HTTPクライアントです。クエリ文字列やPOSTリクエストの作成、大容量データのアップロードとダウンロードのストリーミング、Cookieの処理、JSONペイロードの送信をシンプルなインターフェースで行えます。
同じインターフェースを使って、リクエストを同期または非同期で送信できます。Guzzleはリクエスト、レスポンス、ストリームにPSR-7インターフェースを使用し、PSR-18にも対応しているため、互換性のある他のライブラリやクライアントと連携できます。基盤となるトランスポートは抽象化されているため、アプリケーションのコードがcURL、PHPストリーム、ソケット、イベントループに強く依存することはありません。
ミドルウェアシステムを通じて動作を拡張でき、クライアントのリクエスト処理を追加・構成できます。
主な機能
- 01クエリ文字列、POSTボディ、JSONペイロードを扱うシンプルなAPI。
- 021つのインターフェースで同期・非同期リクエストを送信。
- 03PSR-7のリクエスト、レスポンス、ストリームに対応。
- 04他のHTTPクライアントとのPSR-18互換性。
- 05大容量ファイルのアップロードとダウンロードをストリーミング。
- 06リクエスト処理をカスタマイズできるミドルウェアシステム。
ユースケース
- PHPアプリケーションからサードパーティのREST APIやJSON APIを呼び出す。
- 非同期呼び出しで多数のHTTPリクエストを並行して送信する。
- リモートエンドポイントとの間で大容量ファイルをストリーミングする。
- PHPでトランスポートに依存しないAPIクライアントライブラリを構築する。
クイックスタート
- 1
ComposerでGuzzleをインストールする
composer require guzzlehttp/guzzle - 2
クライアントを作成してGETリクエストを送信する
使う前に知っておきたいこと
- 最新バージョンにはPHP 7.4以降が必要です。
収録されている特集
トピック
よくある質問
- guzzle とは?
- 同期・非同期リクエストの送信やWebサービスとの連携に使える、拡張性の高いPHP HTTPクライアントです。 Guzzleは、HTTPリクエストの送信を簡単にし、Webサービスとの連携をシンプルにするPHP HTTPクライアントです。クエリ文字列やPOSTリクエストの作成、大容量データのアップロードとダウンロードのストリーミング、Cookieの処理、JSONペイロードの送信をシンプルなインターフェースで行えます。
- guzzle は無料で使えますか?ライセンスは?
- guzzle は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- guzzle は今もメンテナンスされていますか?
- 活発にメンテナンス中。guzzle の最終コミットは 2026年10月25日 です。
- guzzle は何に使えますか?
- PHPアプリケーションからサードパーティのREST APIやJSON APIを呼び出す。 非同期呼び出しで多数のHTTPリクエストを並行して送信する。 リモートエンドポイントとの間で大容量ファイルをストリーミングする。 PHPでトランスポートに依存しないAPIクライアントライブラリを構築する。
- guzzle のインストール方法は?
- ComposerでGuzzleをインストールする: composer require guzzlehttp/guzzle クライアントを作成してGETリクエストを送信する
- guzzle はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/guzzle/guzzle
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
curlコマンドを通常のJavaメソッド呼び出しとして実行できるJavaライブラリ。HTTPクライアントのコードを書かずに、PostmanやブラウザーのDevToolsからコピーしたcurlをそのまま使えます。
クイックメモ、JSON整形、HTTPリクエスト、エンコード、暗号化、QRコード、cronなどをまとめた開発者向けデスクトップツールボックス。
イベントループを備え、TCP/UDP、SSL、HTTP、WebSocket、MQTT、Redisのクライアント/サーバーに対応するクロスプラットフォームのC/C++ネットワークライブラリ。
curlベースのPython HTTPクライアント。ブラウザーのTLS、JA3、HTTP/2フィンガープリントを偽装し、ブロックを回避できます。
Hurlは、プレーンテキスト形式のファイルに記述したHTTPリクエストを実行・テストするコマンドラインツールです。