PHP cURL 関数
概要
PHP がサポートする、Daniel Stenberg によって作成された libcurl ライブラリを使用すると、さまざまなサーバーとさまざまな種類のプロトコルを使用して接続および通信できます。
libcurl は現在、http、https、ftp、gopher、telnet、dict、file、ldap プロトコルをサポートしています。libcurl はまた、HTTPS 認証、HTTP POST、HTTP PUT、FTP アップロード(これは PHP の FTP 拡張機能でも実行できます)、HTTP フォームベースのアップロード、プロキシ、クッキー、ユーザー名 + パスワードの認証もサポートしています。
PHP で cURL を使用して Get および Post リクエストを実装する方法
これらの関数は PHP 4.0.2 で導入されました。
要件
PHP の cURL 関数を使用するには、インストールする必要がありますlibcurlパッケージ。
PHP は libcurl 7.0.2-beta 以降のバージョンが必要です。PHP 4.2.3 で cURL を使用するには、libcurl 7.9.0 以降のバージョンをインストールする必要があります。PHP 4.3.0 以降では、libcurl 7.9.0 以降のバージョンをインストールする必要があります。PHP 5.0.0 以降では、libcurl 7.10.5 以降のバージョンをインストールする必要があります。
インストール
PHP の cURL サポートを使用するには、PHP をコンパイルするときに --with-curl[=DIR] オプションを追加する必要があります。DIR は lib と include を含むディレクトリパスです。include ディレクトリには、easy.h と curl.h を含む curl という名前のフォルダが必要です。lib フォルダには libcurl.a という名前のファイルが必要です。PHP 4.3.0 では、--with-curlwrappers を設定して cURL が URL ストリームを使用できるようにできます。
注意: Win32 ユーザーへの注意
Windows 環境でこのモジュールを使用するには、libeay32.dll と ssleay32.dll を PATH 環境変数に含まれるディレクトリに配置する必要があります。cURL ウェブサイトの libcurl.dll は使用しないでください。
リソースタイプ
この拡張機能は 2 つのリソースを定義します: cURL ハンドルと cURL バッチハンドルです。
PHP cURL 関数
以下は PHP cURL 関数のリストです:
| 関数 | 説明 |
|---|---|
| curl_close() | cURL セッションを閉じます。 |
| curl_copy_handle() | cURL ハンドルとそのすべてのオプションをコピーします。 |
| curl_errno() | 最後のエラー番号を返します。 |
| curl_error() | 現在のセッションの最新のエラーを含む文字列を返します。 |
| curl_escape() | エスケープされた文字列を返し、指定された文字列を URL エンコードします。 |
| curl_exec() | cURL セッションを実行します。 |
| curl_file_create() | CURLFile オブジェクトを作成します。 |
| curl_getinfo() | cURL 接続リソースハンドルの情報を取得します。 |
| curl_init() | cURL セッションを初期化します。 |
| curl_multi_add_handle() | curl バッチセッションに個別の curl ハンドルを追加します。 |
| curl_multi_close() | 一連の cURL ハンドルを閉じます。 |
| curl_multi_exec() | 現在の cURL ハンドルのサブ接続を実行します。 |
| curl_multi_getcontent() | CURLOPT_RETURNTRANSFER が設定されている場合、取得した出力のテキストストリームを返します。 |
| curl_multi_info_read() | 現在の cURL の関連する転送情報を取得します。 |
| curl_multi_init() | 新しい cURL バッチハンドルを返します。 |
| curl_multi_remove_handle() | curl バッチハンドルリソースから特定のハンドルリソースを削除します。 |
| curl_multi_select() | すべての cURL バッチ内のアクティブな接続を待機します。 |
| curl_multi_setopt() | バッチ cURL 転送オプションを設定します。 |
| curl_multi_strerror() | エラーコードを説明する文字列テキストを返します。 |
| curl_pause() | 接続を一時停止および再開します。 |
| curl_reset() | libcurl のセッションハンドルのすべてのオプションをリセットします。 |
| curl_setopt_array() | cURL 転送セッションにオプションを一括設定します。 |
| curl_setopt() | cURL 転送オプションを 1 つ設定します。 |
| curl_share_close() | cURL 共有ハンドルを閉じます。 |
| curl_share_init() | cURL 共有ハンドルを初期化します。 |
| curl_share_setopt() | 共有ハンドルの cURL 転送オプションを設定します。 |
| curl_strerror() | エラーコードの文字列による説明を返します。 |
| curl_unescape() | URL エンコードされた文字列をデコードします。 |
| curl_version() | cURL バージョン情報を取得します。 |