PHP は、Daniel Stenbergにより開発されたライブラリlibcurl をサポー トします。このライブラリにより、多くの異なったプロトコルで様々なサー バーと接続し、通信することが可能になります。libcurl は現在 http, https, ftp, gopher, telnet, dict, file, ldap プロトコルをサ ポートしてします。libcurl は HTTPS 認証、HTTP POST、HTTP PUT、FTP アップロード(これはPHPのftp拡張機能でも実行可能です)、HTTPフォーム によるアップロード、プロキシ、クッキー、ユーザ名+パスワードによる 認証もサポートします。
これらの関数は、PHP 4.0.2で追加されました。
PHP の cURL 関数を使用するためには、libcurl パッケージをインストールしておく必要があります。PHP は、 libcurl 7.0.2-beta 以降を必要とします。 PHP バージョン 4.2.3 以降、少なくとも libcurl バージョン 7.9.0 以降が必要となっています。 PHP 4.3.0 以降では、7.9.8 以降が必要です。 PHP 5.0.0 では、おそらく、libcurl 7.10.5 以降が必要となります。
PHP の cURL サポート機能を使用するには、--with-curl[=DIR]
を付けて PHP をコンパイル
しておく必要があります。ただし、DIR は、ディレクトリ lib および
include を有するディレクトリの場所となります。
ディレクトリ "include" には、"curl" という名前のフォルダがある
必要があり、そのフォルダにはファイル easy.h
および curl.h がある必要が
あります。libcurl.a という名前のファイルがディレクトリ "lib"
にある必要があります。PHP 4.3.0 以降、URL ストリームで cURL を使用するよう PHP を
設定するために --with-curlwrappers
を指定できます。
Win32 ユーザへの注意: このモジュールを Windows 環境で使用可能とするには、 libeay32.dll および ssleay32.dll が PATH の通った場所に存在する必要があります。
cURL のサイトにある libcurl.dll は不要です。
以下の定数が定義されています。 この関数の拡張モジュールが PHP 組み込みでコンパイルされているか、 実行時に動的にロードされている場合のみ使用可能です。
PHP 5.2.0 以降で使用可能です。
PHP 5.2.0 以降で使用可能です。
PHP 5.2.0 以降で使用可能です。
PHP 5.2.0 以降で使用可能です。
PHP 5.2.0 以降で使用可能です。
PHP 5.1.0 以降で使用可能です。
PHP 6.0.0 以降で使用可能です。
PHP 5.1.0 以降で使用可能です。
PHP 5.1.0 以降で使用可能です。
PHP 5.1.0 以降で使用可能です。
PHP を cURL サポート機能付きでコンパイルすると、 curl 関数を使用可能となります。cURL 関数の基本的な使用法は、 curl_init()により cURL セッションを初期化、 curl_setopt() により転送時のオプションを設定、 続いてcurl_exec() により転送を実行し、 curl_close() によりセッションを終了するというものになります。 cURL 関数を使用して PHP ホームページをファイルに取得する例を示します。