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で追加されました。
CURL関数を使用するためには、
CURL
パッケージをインストールしておく必要があります。PHPは、 CURL 7.0.2-beta
以降を必要とします。7.0.2-beta以前のバージョンで は動作しません。PHP
バージョン4.2.3以降、少なくともCURLバージョン 7.9.0以降が必要となっています。
PHPのCURLサポート機能を使用するには、
--with-curl[=DIR]
を付けてPHPをコンパイル しておく必要があります。ただし、DIRは、ディレクトリlibおよび
includeを有するディレクトリの場所となります。
ディレクトリ"include"には、"curl"という名前のフォルダーがある必要
があり、そのフォルダには、ファイルeash.hおよびcurl.hがある必要があ
ります。"libcurl.a"という名前のファイルがディレクトリ"lib"にある必 要があります。PHP
4.3.0以降、urlストリームでCURLを使用するようPHPを 設定するために
--with-curlwrappers
を指定できます。
Win32ユーザへの注意 このモジュールをWindows環境で使用可能とするには、PHP/Win32バイナリ パッケージのDLLフォルダにある libeay32.dll および ssleay32.dll を使用するWindowsマシンのSYSTEM32 フォルダ(例: C:\WINNT\SYSTEM32 または C:\WINDOWS\SYSTEM32)にコピー する必要があります。
これらの定数は、この拡張モジュールで定義されており、
この拡張モジュールがPHP内部にコンパイルされているか実行時に動的にロー
ドされるかのどちらかの場合のみ使用可能です。
PHPをCURLサポート機能付きでコンパイルした場合、curl関数を使用可能
となります。CURL関数の基本的な使用法は、
curl_init()
によりCURLセッションを初期化し、 続いて
curl_exec()
により転送を実行し、
curl_close()
によりセッションを終了するというも のになります。CURL関数を使用してPHPホームページをファイルに取得す
る例を示します。