# 定義済み定数

以下の定数が定義されています。 この関数の拡張モジュールが PHP 組み込みでコンパイルされているか、 実行時に動的にロードされている場合のみ使用可能です。

以下の定数の説明と使い方は、 curl_setopt(), curl_multi_setopt(), curl_getinfo() のドキュメントで説明しています。

定数 | 説明
--- | ---
`CURLALTSVC_H1` (int) | PHP 8.2.0 以降 および cURL 7.64.1 以降で利用可能です。
`CURLALTSVC_H2` (int) | PHP 8.2.0 以降 および cURL 7.64.1 以降で利用可能です。
`CURLALTSVC_H3` (int) | PHP 8.2.0 以降 および cURL 7.64.1 以降で利用可能です。
`CURLALTSVC_READONLYFILE` (int) | PHP 8.2.0 以降 および cURL 7.64.1 以降で利用可能です。
`CURLAUTH_ANY` (int) |
`CURLAUTH_ANYSAFE` (int) |
`CURLAUTH_AWS_SIGV4` (int) | PHP 8.2.0 以降 および cURL 7.75.0 以降で利用可能です。
`CURLAUTH_BASIC` (int) |
`CURLAUTH_BEARER` (int) | PHP 7.3.0 以降 および cURL 7.61.0 以降で利用可能です。
`CURLAUTH_DIGEST` (int) |
`CURLAUTH_DIGEST_IE` (int) | IE フレーバーと HTTP Digest 認証を使います。 cURL 7.19.3 以降で利用可能です。
`CURLAUTH_GSSAPI` (int) | PHP 7.3.0 以降 および cURL 7.54.1 以降で利用可能です。
`CURLAUTH_GSSNEGOTIATE` (int) |
`CURLAUTH_NEGOTIATE` (int) | PHP 7.0.7 以降 および cURL 7.38.0 以降で利用可能です。
`CURLAUTH_NONE` (int) | cURL 7.10.6 以降で利用可能です。
`CURLAUTH_NTLM` (int) |
`CURLAUTH_NTLM_WB` (int) | PHP 7.0.7 以降 および cURL 7.22.0 以降で利用可能です。
`CURLAUTH_ONLY` (int) | これはメタシンボルです。 この値と単一の特別な認証の値を組み合わせることで、 libcurl に制限なしの認証を試みさせ、 それが失敗した場合、単一の認証アルゴリズムを受け入れさせるようにします。 cURL 7.21.3 以降で利用可能です。
`CURLFOLLOW_ALL` (int) | `CURLOPT_FOLLOWLOCATION` に指定する値で、 リダイレクトの追跡を有効にしつつ、 `CURLOPT_CUSTOMREQUEST` で設定したカスタムのリクエストメソッドを、 リダイレクト後も含めた全てのリクエストで使い続けます。 PHP 8.5.0 以降 および cURL 8.13.0 以降で利用可能です。
`CURLFOLLOW_OBEYCODE` (int) | `CURLOPT_FOLLOWLOCATION` に指定する値で、 HTTP のレスポンスコードに従いつつリダイレクトの追跡を有効にします。 `CURLOPT_CUSTOMREQUEST` で設定したカスタムのリクエストメソッドは保持されますが、 それが必要なリダイレクトのステータスコード(301, 302, 303 など)の場合は `GET` に変更されます。 PHP 8.5.0 以降 および cURL 8.13.0 以降で利用可能です。
`CURLFOLLOW_FIRSTONLY` (int) | `CURLOPT_FOLLOWLOCATION` に指定する値で、 リダイレクトの追跡を有効にしますが、 `CURLOPT_CUSTOMREQUEST` で設定したカスタムのリクエストメソッドを使うのは 最初のリクエストだけです。 それ以降のリクエストは、リダイレクトのレスポンスコードが指示するメソッドに従います。 PHP 8.5.0 以降 および cURL 8.13.0 以降で利用可能です。
`CURLFTPAUTH_DEFAULT` (int) |
`CURLFTPAUTH_SSL` (int) |
`CURLFTPAUTH_TLS` (int) |
`CURLFTPMETHOD_DEFAULT` (int) | PHP 8.2.0 以降 および cURL 7.15.3 以降で利用可能です。
`CURLFTPMETHOD_MULTICWD` (int) | 指定された URL 中の個別の path 部分に `CWD` 操作を行います。 cURL 7.15.3 以降で利用可能です。
`CURLFTPMETHOD_NOCWD` (int) | `CWD` を全く実行しません。 `SIZE`, `RETR`, `STOR` などを実行し、 これらのコマンドに対して、サーバーのフルパスを指定します。 cURL 7.15.3 以降で利用可能です。
`CURLFTPMETHOD_SINGLECWD` (int) | ディレクトリ全体に対して一度 `CWD` を実行してから、 multicwd の場合のように、ファイルを操作します。 cURL 7.15.3 以降で利用可能です。
`CURLFTPSSL_ALL` (int) |
`CURLFTPSSL_CCC_ACTIVE` (int) | シャットダウンを発行し、応答を待ちます。 cURL 7.16.2 以降で利用可能です。
`CURLFTPSSL_CCC_NONE` (int) | CCC (Clear Command Channel) を使いません。 cURL 7.16.2 以降で利用可能です。
`CURLFTPSSL_CCC_PASSIVE` (int) | シャットダウンを発行せず、サーバーが発行するのを待ちます。 応答を送信しません。 cURL 7.16.1 以降で利用可能です。
`CURLFTPSSL_CONTROL` (int) |
`CURLFTPSSL_NONE` (int) |
`CURLFTPSSL_TRY` (int) |
`CURLFTP_CREATE_DIR` (int) | PHP 7.0.7 以降 および cURL 7.19.3 以降で利用可能です。
`CURLFTP_CREATE_DIR_NONE` (int) | PHP 7.0.7 以降 および cURL 7.19.3 以降で利用可能です。
`CURLFTP_CREATE_DIR_RETRY` (int) | PHP 7.0.7 以降 および cURL 7.19.3 以降で利用可能です。
`CURLGSSAPI_DELEGATION_FLAG` (int) | GSSAPI クレデンシャルの委譲を許可します。 cURL 7.22.0 以降で利用可能です。
`CURLGSSAPI_DELEGATION_POLICY_FLAG` (int) | GSS-API の実装がこの機能をサポートしている場合、 かつ `GSS_C_DELEG_POLICY_FLAG` がコンパイル時に定義されている場合には、 サービスチケットに `OK-AS-DELEGATE` フラグが設定されている場合に限り委譲を行います。 cURL 7.22.0 以降で利用可能です。
`CURLHEADER_SEPARATE` (int) | PHP 7.0.7 以降 および cURL 7.37.0 以降で利用可能です。
`CURLHEADER_UNIFIED` (int) | PHP 7.0.7 以降 および cURL 7.37.0 以降で利用可能です。
`CURLHSTS_ENABLE` (int) | PHP 8.2.0 以降 および cURL 7.74.0 以降で利用可能です。
`CURLHSTS_READONLYFILE` (int) | PHP 8.2.0 以降 および cURL 7.74.0 以降で利用可能です。
`CURLKHMATCH_LAST` (int) | PHP 8.3.0 以降 および cURL 7.19.6 以降で利用可能です。
`CURLKHMATCH_MISMATCH` (int) | PHP 8.3.0 以降 および cURL 7.19.6 以降で利用可能です。
`CURLKHMATCH_MISSING` (int) | PHP 8.3.0 以降 および cURL 7.19.6 以降で利用可能です。
`CURLKHMATCH_OK` (int) | PHP 8.3.0 以降 および cURL 7.19.6 以降で利用可能です。
`CURLMIMEOPT_FORMESCAPE` (int) | PHP 8.3.0 以降 および cURL 7.81.0 以降で利用可能です。
`CURLMSG_DONE` (int) |
`CURLPIPE_HTTP1` (int) | cURL 7.43.0 以降で利用可能です。
`CURLPIPE_MULTIPLEX` (int) | cURL 7.43.0 以降で利用可能です。
`CURLPIPE_NOTHING` (int) | cURL 7.43.0 以降で利用可能です。
`CURLPROXY_HTTP` (int) | cURL 7.10 以降で利用可能です。
`CURLPROXY_HTTPS` (int) | PHP 7.3.0 以降 および cURL 7.52.0 以降で利用可能です。
`CURLPROXY_HTTP_1_0` (int) | PHP 7.0.7 以降 および cURL 7.19.3 以降で利用可能です。
`CURLPROXY_SOCKS4` (int) | cURL 7.10 以降で利用可能です。
`CURLPROXY_SOCKS4A` (int) | cURL 7.18.0 以降で利用可能です。
`CURLPROXY_SOCKS5` (int) | cURL 7.10 以降で利用可能です。
`CURLPROXY_SOCKS5_HOSTNAME` (int) | cURL 7.18.0 以降で利用可能です。
`CURLPX_BAD_ADDRESS_TYPE` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_BAD_VERSION` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_CLOSED` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_GSSAPI` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_GSSAPI_PERMSG` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_GSSAPI_PROTECTION` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_IDENTD` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_IDENTD_DIFFER` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_LONG_HOSTNAME` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_LONG_PASSWD` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_LONG_USER` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_NO_AUTH` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_OK` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_RECV_ADDRESS` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_RECV_AUTH` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_RECV_CONNECT` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_RECV_REQACK` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_REPLY_ADDRESS_TYPE_NOT_SUPPORTED` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_REPLY_COMMAND_NOT_SUPPORTED` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_REPLY_CONNECTION_REFUSED` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_REPLY_GENERAL_SERVER_FAILURE` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_REPLY_HOST_UNREACHABLE` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_REPLY_NETWORK_UNREACHABLE` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_REPLY_NOT_ALLOWED` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_REPLY_TTL_EXPIRED` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_REPLY_UNASSIGNED` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_REQUEST_FAILED` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_RESOLVE_HOST` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_SEND_AUTH` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_SEND_CONNECT` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_SEND_REQUEST` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_UNKNOWN_FAIL` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_UNKNOWN_MODE` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLPX_USER_REJECTED` (int) | PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLSSH_AUTH_AGENT` (int) | PHP 7.0.7 以降 および cURL 7.28.0 以降で利用可能です。
`CURLSSH_AUTH_ANY` (int) |
`CURLSSH_AUTH_DEFAULT` (int) |
`CURLSSH_AUTH_GSSAPI` (int) | PHP 7.3.0 以降 および cURL 7.58.0 以降で利用可能です。
`CURLSSH_AUTH_HOST` (int) |
`CURLSSH_AUTH_KEYBOARD` (int) |
`CURLSSH_AUTH_NONE` (int) |
`CURLSSH_AUTH_PASSWORD` (int) |
`CURLSSH_AUTH_PUBLICKEY` (int) |
`CURLSSLOPT_ALLOW_BEAST` (int) | cURL 7.25. 以降で利用可能です。
`CURLSSLOPT_AUTO_CLIENT_CERT` (int) | PHP 8.2.0 以降 および cURL 7.77.0 以降で利用可能です。
`CURLSSLOPT_NATIVE_CA` (int) | PHP 8.2.0 以降 および cURL 7.71.0 以降で利用可能です。
`CURLSSLOPT_NO_PARTIALCHAIN` (int) | PHP 8.2.0 以降 および cURL 7.68.0 以降で利用可能です。
`CURLSSLOPT_NO_REVOKE` (int) | PHP 7.0.7 以降 および cURL 7.44.0 以降で利用可能です。
`CURLSSLOPT_REVOKE_BEST_EFFORT` (int) | PHP 8.2.0 以降 および cURL 7.70.0 以降で利用可能です。
`CURLUSESSL_ALL` (int) | 全ての通信に SSL を要求するか、 `CURLE_USE_SSL_FAILED` で失敗します。 cURL 7.17.0 以降で利用可能です。
`CURLUSESSL_CONTROL` (int) | 制御接続(コントロールコネクション) について SSL を要求するか、 `CURLE_USE_SSL_FAILED` で失敗します。 cURL 7.17.0 以降で利用可能です。
`CURLUSESSL_NONE` (int) | SSL を利用しません。 cURL 7.17.0 以降で利用可能です。
`CURLUSESSL_TRY` (int) | SSL を利用しようとしますが、利用できなければ通常の接続を試みます。 ネゴシエーションが失敗した場合、サーバーの接続が閉じる可能性があることに注意しましょう。 cURL 7.17.0 以降で利用可能です。
`CURLVERSION_NOW` (int) |
`CURLWS_RAW_MODE` (int) | PHP 8.3.0 以降 および cURL 7.86.0 以降で利用可能です。
`CURL_FNMATCHFUNC_FAIL` (int) | エラーが発生した場合、ワイルドカードマッチのコールバック関数を返します。 cURL 7.21.0 以降で利用可能です。
`CURL_FNMATCHFUNC_MATCH` (int) | 文字列にパターンがマッチした場合、 ワイルドカードマッチのコールバック関数を返します。 cURL 7.21.0 以降で利用可能です。
`CURL_FNMATCHFUNC_NOMATCH` (int) | 文字列にパターンがマッチしない場合、 ワイルドカードマッチのコールバック関数を返します。 cURL 7.21.0 以降で利用可能です。
`CURL_HTTP_VERSION_1_0` (int) |
`CURL_HTTP_VERSION_1_1` (int) |
`CURL_HTTP_VERSION_2` (int) | PHP 7.0.7 以降 および cURL 7.43.0 以降で利用可能です。
`CURL_HTTP_VERSION_2TLS` (int) | PHP 7.0.7 以降 および cURL 7.47.0 以降で利用可能です。
`CURL_HTTP_VERSION_2_0` (int) | cURL 7.33. 以降で利用可能です。
`CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE` (int) | PHP 7.0.7 以降 および cURL 7.49.0 以降で利用可能です。
`CURL_HTTP_VERSION_3` (int) | PHP 8.4.0 以降 および cURL 7.66.0 以降で利用可能です。
`CURL_HTTP_VERSION_3ONLY` (int) | PHP 8.4.0 以降 および cURL 7.88.0 以降で利用可能です。
`CURL_HTTP_VERSION_NONE` (int) |
`CURL_IPRESOLVE_V4` (int) | 接続を確立する際に、IPv4 アドレスのみを使うか、 コネクションプールから接続を選択します。 cURL 7.10.8 以降で利用可能です。
`CURL_IPRESOLVE_V6` (int) | 接続を確立する際に、IPv6 アドレスのみを使うか、 コネクションプールから接続を選択します。 cURL 7.10.8 以降で利用可能です。
`CURL_IPRESOLVE_WHATEVER` (int) | システムから許可された全ての IP のバージョンのアドレスを使います。 cURL 7.10.8 以降で利用可能です。
`CURL_MAX_READ_SIZE` (int) | PHP 7.3.0 以降 および cURL 7.53.0 以降で利用可能です。
`CURL_NETRC_IGNORED` (int) |
`CURL_NETRC_OPTIONAL` (int) |
`CURL_NETRC_REQUIRED` (int) |
`CURL_PUSH_DENY` (int) | PHP 7.1.0 以降 および cURL 7.44.0 以降で利用可能です。
`CURL_PUSH_OK` (int) | PHP 7.1.0 以降 および cURL 7.44.0 以降で利用可能です。
`CURL_READFUNC_PAUSE` (int) | cURL 7.18.0 以降で利用可能です。
`CURL_REDIR_POST_301` (int) | PHP 7.0.7 以降 および cURL 7.18.2 以降で利用可能です。
`CURL_REDIR_POST_302` (int) | PHP 7.0.7 以降 および cURL 7.18.2 以降で利用可能です。
`CURL_REDIR_POST_303` (int) | PHP 7.0.7 以降 および cURL 7.25.1 以降で利用可能です。
`CURL_REDIR_POST_ALL` (int) | PHP 7.0.7 以降 および cURL 7.18.2 以降で利用可能です。
`CURL_RTSPREQ_ANNOUNCE` (int) | クライアントが送信した場合、このメソッドはセッションの説明を変更します。 `ANNOUNCE` は、 HTTP PUT や POST のような動作をします。 これは `CURL_RTSPREQ_SET_PARAMETER` と同様です。 cURL 7.20.0 以降で利用可能です。
`CURL_RTSPREQ_DESCRIBE` (int) | ストリームの低レベルな説明を取得するために使います。 アプリケーションは、自分が理解しているフォーマットを `Accept:` ヘッダに記述する必要があります。 手動で設定しない限り、 libcurl は自動的に `Accept: application/sdp` を追加します。 `CURLOPT_TIMECONDITION` オプションを使うと、DESCRIBE リクエストに時刻に関する条件のヘッダを追加します。 cURL 7.20.0 以降で利用可能です。
`CURL_RTSPREQ_GET_PARAMETER` (int) | サーバーからパラメータを取得します。 デフォルトでは、libcurl は `Content-Type: text/parameters` ヘッダを全ての空でないリクエストに追加します。 カスタムのヘッダが設定されない限り、これは行われます。 `GET_PARAMETER` は、HTTP PUT や POST のように振る舞います。 ハートビートメッセージを送信したいアプリケーションは、 空の `GET_PARAMETER` リクエストを使うべきです。 cURL 7.20.0 以降で利用可能です。
`CURL_RTSPREQ_OPTIONS` (int) | サーバーで利用可能なメソッドを取得するために使います。 cURL 7.20.0 以降で利用可能です。
`CURL_RTSPREQ_PAUSE` (int) | `PAUSE` コマンドをサーバーに送信します。 `CURLOPT_RANGE` を単一の値と一緒に使い、 ストリームを停止すべきタイミング(例: npt=25) を指定します。 cURL 7.20.0 以降で利用可能です。
`CURL_RTSPREQ_PLAY` (int) | `PLAY` コマンドをサーバーに送信します。 再生時間を変更するには、 `CURLOPT_RANGE` オプションを使います(例: npt=10-15)。 cURL 7.20.0 以降で利用可能です。
`CURL_RTSPREQ_RECEIVE` (int) | この値を RTSP リクエストタイプに設定すると、 インターリーブされた RTP データを受信できます。 cURL 7.20.0 以降で利用可能です。
`CURL_RTSPREQ_RECORD` (int) | サーバーにセッションを記録するように指示します。 記録する時間を変更するには、 `CURLOPT_RANGE` オプションを使います。 cURL 7.20.0 以降で利用可能です。
`CURL_RTSPREQ_SETUP` (int) | セッションの transport layer を初期化するために使います。 cURL 7.20.0 以降で利用可能です。
`CURL_RTSPREQ_SET_PARAMETER` (int) | サーバー上のパラメーターを設定します。 cURL 7.20.0 以降で利用可能です。
`CURL_RTSPREQ_TEARDOWN` (int) | RTSP セッションを終了します。 単純に接続を閉じただけでは、RTSP セッションは終了しません。 なぜなら、異なる接続から RTSP セッションを制御するのは正当なためです。 cURL 7.20.0 以降で利用可能です。
`CURL_SSLVERSION_DEFAULT` (int) |
`CURL_SSLVERSION_MAX_DEFAULT` (int) | PHP 7.3.0 以降 および cURL 7.54.0 以降で利用可能です。
`CURL_SSLVERSION_MAX_NONE` (int) | PHP 7.3.0 以降 および cURL 7.54.0 以降で利用可能です。
`CURL_SSLVERSION_MAX_TLSv1_0` (int) | PHP 7.3.0 以降 および cURL 7.54.0 以降で利用可能です。
`CURL_SSLVERSION_MAX_TLSv1_1` (int) | PHP 7.3.0 以降 および cURL 7.54.0 以降で利用可能です。
`CURL_SSLVERSION_MAX_TLSv1_2` (int) | PHP 7.3.0 以降 および cURL 7.54.0 以降で利用可能です。
`CURL_SSLVERSION_MAX_TLSv1_3` (int) | PHP 7.3.0 以降 および cURL 7.54.0 以降で利用可能です。
`CURL_SSLVERSION_SSLv2` (int) |
`CURL_SSLVERSION_SSLv3` (int) |
`CURL_SSLVERSION_TLSv1` (int) |
`CURL_SSLVERSION_TLSv1_0` (int) |
`CURL_SSLVERSION_TLSv1_1` (int) |
`CURL_SSLVERSION_TLSv1_2` (int) |
`CURL_SSLVERSION_TLSv1_3` (int) | PHP 7.3.0 以降 および cURL 7.52.0 以降で利用可能です。
`CURL_TIMECOND_IFMODSINCE` (int) |
`CURL_TIMECOND_IFUNMODSINCE` (int) |
`CURL_TIMECOND_LASTMOD` (int) |
`CURL_TIMECOND_NONE` (int) |
`CURL_TLSAUTH_SRP` (int) | cURL 7.21.4 以降で利用可能です。
`CURL_VERSION_ALTSVC` (int) | PHP 7.3.6 以降 および cURL 7.64.1 以降で利用可能です。
`CURL_VERSION_ASYNCHDNS` (int) | 非同期で DNS の名前解決を行います。 PHP 7.3.0 以降 および cURL 7.10.7 以降で利用可能です。
`CURL_VERSION_BROTLI` (int) | PHP 7.3.0 以降 および cURL 7.57.0 以降で利用可能です。
`CURL_VERSION_CONV` (int) | 文字変換をサポートします。 PHP 7.3.0 以降 および cURL 7.15.4 以降で利用可能です。
`CURL_VERSION_CURLDEBUG` (int) | デバッグ用途に、メモリ追跡をサポートします。 PHP 7.3.6 以降 および cURL 7.19.6 以降で利用可能です。
`CURL_VERSION_DEBUG` (int) | デバッグ機能を有効にしてビルドします。 PHP 7.3.0 以降 および cURL 7.10.6 以降で利用可能です。
`CURL_VERSION_GSASL` (int) | PHP 8.2.0 以降 および cURL 7.76.0 以降で利用可能です。
`CURL_VERSION_GSSAPI` (int) | GSS-API ライブラリを組み込んでビルドします。 PHP 7.3.0 以降 および cURL 7.38.0 以降で利用可能です。
`CURL_VERSION_GSSNEGOTIATE` (int) | Negotiate auth をサポートします。 PHP 7.3.0 以降 および cURL 7.10.6 (cURL 7.38.0 以降では非推奨) 以降で利用可能です。
`CURL_VERSION_HSTS` (int) | PHP 8.2.0 以降 および cURL 7.74.0 以降で利用可能です。
`CURL_VERSION_HTTP2` (int) | HTTP2 サポートを組み込みます。 cURL 7.33. 以降で利用可能です。
`CURL_VERSION_HTTP3` (int) | PHP 8.2.0 以降 および cURL 7.66.0 以降で利用可能です。
`CURL_VERSION_HTTPS_PROXY` (int) | PHP 7.3.0 以降 および cURL 7.52.0 以降で利用可能です。
`CURL_VERSION_IDN` (int) | IDN (国際化ドメイン名) をサポートします。 PHP 7.3.0 以降 および cURL 7.12.0 以降で利用可能です。
`CURL_VERSION_IPV6` (int) | IPv6-enabled.
`CURL_VERSION_KERBEROS4` (int) | Kerberos V4 による認証をサポートします。
`CURL_VERSION_KERBEROS5` (int) | Kerberos V5 による認証をサポートします。 PHP 7.0.7 以降 および cURL 7.40.0 以降で利用可能です。
`CURL_VERSION_LARGEFILE` (int) | 2GB 以上のファイルをサポートします。 cURL 7.33.0 以降で利用可能です。
`CURL_VERSION_LIBZ` (int) | libz features are present.
`CURL_VERSION_MULTI_SSL` (int) | PHP 7.3.0 以降 および cURL 7.56.0 以降で利用可能です。
`CURL_VERSION_NTLM` (int) | NTLM 認証をサポートします。 PHP 7.3.0 以降 および cURL 7.10.6 以降で利用可能です。
`CURL_VERSION_NTLM_WB` (int) | winbind ヘルパに対する NTLM 委譲をサポートします。 PHP 7.3.0 以降 および cURL 7.22.0 以降で利用可能です。
`CURL_VERSION_PSL` (int) | Mozilla の Public Suffix List。 Cookie ドメインの検証に使います。 PHP 7.3.6 以降 および cURL 7.47.0 以降で利用可能です。
`CURL_VERSION_SPNEGO` (int) | SPNEGO 認証をサポートします。 PHP 7.3.0 以降 および cURL 7.10.8 以降で利用可能です。
`CURL_VERSION_SSL` (int) | SSL オプションが存在します。
`CURL_VERSION_SSPI` (int) | Windows SSPI を有効にしてビルドします。 PHP 7.3.0 以降 および cURL 7.13.2 以降で利用可能です。
`CURL_VERSION_TLSAUTH_SRP` (int) | TLS-SRP 認証をサポートします。 PHP 7.3.0 以降 および cURL 7.21.4 以降で利用可能です。
`CURL_VERSION_UNICODE` (int) | PHP 8.2.0 以降 および cURL 7.72.0 以降で利用可能です。
`CURL_VERSION_UNIX_SOCKETS` (int) | Unix ドメインソケットをサポートします。 PHP 7.0.7 以降 および cURL 7.40.0 以降で利用可能です。
`CURL_VERSION_ZSTD` (int) | PHP 8.2.0 以降 および cURL 7.72.0 以降で利用可能です。
`CURL_WRITEFUNC_PAUSE` (int) | cURL 7.18.0 以降で利用可能です。
`CURL_PREREQFUNC_OK` (int) | PHP 8.4.0 以降 および cURL 7.80.0 以降で利用可能です。
`CURL_PREREQFUNC_ABORT` (int) | PHP 8.4.0 以降 および cURL 7.80.0 以降で利用可能です。

定数 | 説明
--- | ---
curl_setopt()
`CURLOPT_ABSTRACT_UNIX_SOCKET` (int) | ホストへの TCP 接続を確立する代わりに抽象 Unix ドメインソケットを使うようにし、 そのパスを指定した string へと設定します。 このオプションの使い方は `CURLOPT_UNIX_SOCKET_PATH` と同じです。 これら 2 つのオプションは値を保持する領域を共有しているため、 ハンドルごとに設定できるのはいずれか 1 つだけです。 PHP 7.3.0 以降かつ cURL 7.53.0 以降で利用可能です。
`CURLOPT_ACCEPT_ENCODING` (int) | HTTP リクエストの中で送られる `Accept-Encoding:` ヘッダーの内容を string で指定します。 `null` をセットすると、`Accept-Encoding:` ヘッダーの送信を無効にします。 デフォルト値は `null` です。 cURL 7.21.6 以降で利用可能です。
`CURLOPT_ACCEPTTIMEOUT_MS` (int) | アクティブな FTP 接続を使用している場合に、 cURL がサーバーからの接続を待機する最大ミリ秒数を指定します。 このオプションは、有効な int にキャストできる任意の値を受け付けます。 デフォルト値は `60000` ミリ秒です。 cURL 7.24.0 以降で利用可能です。
`CURLOPT_ADDRESS_SCOPE` (int) | IPv6 アドレスに接続する際に使用するスコープ ID の値を指定します。 このオプションは、有効な int にキャストできる任意の値を受け付けます。 デフォルト値は `0` です。 cURL 7.19.0 以降で利用可能です。
`CURLOPT_ALTSVC` (int) | cURL が Alt-Svc のキャッシュファイルとして使用するファイルの名前を string で指定します。 既存のキャッシュ内容をこのファイルから読み込んだり、転送後にキャッシュをこのファイルへ書き戻したりできます。 ただし、`CURLOPT_ALTSVC_CTRL` に `CURLALTSVC_READONLYFILE` が指定されている場合、 書き込みはできません。 PHP 8.2.0 以降かつ cURL 7.64.1 以降で利用可能です。
`CURLOPT_ALTSVC_CTRL` (int) | このハンドルを使う転送において、cURL が Alt-Svc をどう処理するかを指示するために、 適切な機能セットのビットマスクを設定します。cURL は HTTPS 経由でのみ Alt-Svc ヘッダーを受け付けます。 また、代替オリジンが HTTPS で適切にホストされている場合にのみ、代替オリジンへのリクエストを最後まで実行します。 いずれかのビットを設定すると alt-svc エンジンが有効になります。 `CURLALTSVC_*` 定数のいずれかを設定します。 デフォルトでは Alt-Svc 処理は無効です。 PHP 8.2.0 以降かつ cURL 7.64.1 以降で利用可能です。
`CURLOPT_APPEND` (int) | このオプションを `1` に設定すると、FTP アップロード時に リモートファイルを上書きするのではなく、末尾に追加するようになります。 デフォルト値は `0` です。 cURL 7.17.0 以降で利用可能です。
`CURLOPT_AUTOREFERER` (int) | `true` を指定すると、リクエストが `Location:` のリダイレクトによるものである場合、 自動的に `Referer:` ヘッダーを設定します。 デフォルト値は `0` です。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_AWS_SIGV4` (int) | AWS V4 署名認証を HTTP(S) ヘッダーに string として指定します。 このオプションは、`CURLOPT_HTTPAUTH` で設定された 他の認証方法を上書きします。これと他の認証方法を組み合わせることはできません。 PHP 8.2.0 以降かつ cURL 7.75.0 以降で利用可能です。
`CURLOPT_BINARYTRANSFER` (int) | この定数は PHP 5.5.0 以降は用いられていません。 PHP 8.4.0 以降は非推奨となっています。
`CURLOPT_BUFFERSIZE` (int) | 各読込で使用するバッファサイズを設定します。 ただし、必ずしも指定した値が使われるとは限りません。 このオプションは、有効な int にキャストできる任意の値を受け付けます。 デフォルト値は `CURL_MAX_WRITE_SIZE` (現在は 16kB) です。 cURL 7.10 以降で利用可能です。
`CURLOPT_CAINFO` (int) | 相手を検証するための証明書を格納したファイル名を string で指定します。 このオプションは、`CURLOPT_SSL_VERIFYPEER` と組み合わせて用いた場合のみ意味を持ちます。 絶対パスを指定する必要があるかもしれません。 cURL 7.4.2 以降で利用可能です。
`CURLOPT_CAINFO_BLOB` (int) | 相手を検証するための証明書を含む、PEM 形式でエンコードされたコンテンツを、バイナリ string で指定します。 このオプションは `CURLOPT_CAINFO` を上書きします。 PHP 8.2.0 以降かつ cURL 7.77.0 以降で利用可能です。
`CURLOPT_CAPATH` (int) | CA 証明書を格納したディレクトリを string で指定します。 `CURLOPT_SSL_VERIFYPEER` と一緒に使用してください。 cURL 7.9.8 以降で利用可能です。
`CURLOPT_CA_CACHE_TIMEOUT` (int) | CA 証明書ストアのインメモリキャッシュが保持され、新しい接続に再利用される 最大時間を秒単位で指定します。 このオプションは、有効な int にキャストできる任意の値を受け付けます。 デフォルト値は `86400` (24 時間) です。 PHP 8.3.0 以降かつ cURL 7.87.0 以降で利用可能です。
`CURLOPT_CERTINFO` (int) | `true` に設定すると、暗号化された通信の際に SSL 認証情報を `STDERR` へ出力します。 `CURLOPT_VERBOSE` を有効にしている場合にのみ効果があります。 デフォルト値は `false` です。 cURL 7.19.1 以降で利用可能です。
`CURLOPT_CONNECTTIMEOUT` (int) | 接続するまでの最大待機秒数を指定します。 `0` を指定するといつまでも待機します。 このオプションは、有効な int にキャストできる任意の値を受け付けます。 デフォルト値は `300` です。 cURL 7.7.0 以降で利用可能です。
`CURLOPT_CONNECTTIMEOUT_MS` (int) | 接続するまでの最大待機ミリ秒数を指定します。 `0` を指定するといつまでも待機します。 cURL がシステム標準のネームリゾルバを使うようにビルドされている場合、 接続のその部分のタイムアウトは秒精度となり、 指定できる最小の待機時間も 1 秒になります。 このオプションは、有効な int にキャストできる任意の値を受け付けます。 デフォルト値は `300000` です。 cURL 7.16.2 以降で利用可能です。
`CURLOPT_CONNECT_ONLY` (int) | `true` を指定すると、必要なプロキシの認証を行って接続を確立するだけで、 データ転送を行わなくなります。このオプションは HTTP、SMTP、POP3 で実装されています。 デフォルト値は `false` です。 cURL 7.15.2 以降で利用可能です。
`CURLOPT_CONNECT_TO` (int) | URL のホストとポートの代わりに、指定したホストとポートに接続します。 `HOST:PORT:CONNECT-TO-HOST:CONNECT-TO-PORT` の形式の string を array で受け付けます。 PHP 7.0.7 以降かつ cURL 7.49.0 以降で利用可能です。
`CURLOPT_COOKIE` (int) | HTTP リクエストの中で使われる `Cookie:` ヘッダーの内容を string で指定します。 複数のクッキーを指定する場合はセミコロンとスペースで区切ります (例: `fruit=apple; colour=red`)。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_COOKIEFILE` (int) | クッキーデータを格納したファイル名を string で指定します。 クッキーファイルは Netscape 形式か、通常の HTTP スタイルのヘッダーをそのままファイルにダンプしたものです。 ファイル名が空の string の場合、クッキーは読み込まれませんが、クッキーの処理は 行われます。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_COOKIEJAR` (int) | cURL が保持しているすべてのクッキーを保存するファイル名を string で指定します。 書込は cURL ハンドルが破棄されたときに行われます。 cURL 7.9.0 以降で利用可能です。 警告 PHP 8.0.0 以降、curl_close() は 何もしなくなり、ハンドルを破棄 しなく なりました。 ハンドラが自動的に破棄されるよりも前にクッキーを書き出す必要がある場合、 `curl_setopt($ch, CURLOPT_COOKIELIST, "FLUSH");` を実行してください。
`CURLOPT_COOKIELIST` (int) | `string` で指定されたクッキーを内部のクッキーストアに追加します。 この文字列は Nescape/Mozilla 形式の単一行、または通常の HTTP スタイルの Set-Cookie ヘッダーです。 `ALL` はメモリ上に保持されているすべてのクッキーを削除し、 , `SESS` はメモリ上に保持されているすべてのセッションクッキーを削除し、 , `FLUSH` は `CURLOPT_COOKIEJAR` で指定されたファイルにすべてのクッキーを書き出し、 , `RELOAD` は `CURLOPT_COOKIEFILE` で指定されたファイルからすべてのクッキーを読み込みます 。 cURL 7.14.1 以降で利用可能です。
`CURLOPT_COOKIESESSION` (int) | `true` を指定すると、現在の接続を新しいクッキーの「セッション」とみなします。 これにより、cURL は以前のセッションから読み込まれる「セッションクッキー」をすべて無視するようになります。 デフォルトでは、cURL はセッションクッキーかどうかに関わらず、 すべてのクッキーを常に保存し読み込みます。 セッションクッキーは、有効期限がなく この「セッション」中でのみ有効であることが意図されたクッキーです。 cURL 7.9.7 以降で利用可能です。
`CURLOPT_CRLF` (int) | `true` を指定すると、Unix の改行コードを CRLF 改行コードに変換して 送ります。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_CRLFILE` (int) | SSL 交換中の証明書検証で使用する CRL (Certificate Revocation List; 証明書失効リスト) (PEM 形式) を 記載したファイルの名前を string で指定します。 cURL が GnuTLS を使うようにビルドされている場合、 渡した CRL が検証処理でどう使われるかを制御することはできません。 cURL が OpenSSL を使うようにビルドされている場合、 `X509_V_FLAG_CRL_CHECK` と `X509_V_FLAG_CRL_CHECK_ALL` の両方が設定され、 CRL ファイルを渡したなら証明書チェーンの全要素に対して CRL のチェックが必要になります。 また、`CURLOPT_CRLFILE` は OpenSSL のバグのため、 cURL 7.71.0 以降では `CURLSSLOPT_NO_PARTIALCHAIN` を暗示することに注意してください。 cURL 7.19.0 以降で利用可能です。
`CURLOPT_CUSTOMREQUEST` (int) | HTTP リクエストを送る際、`GET` や `HEAD` の代わりに用いるカスタムのリクエストメソッドを指定します。 `DELETE` や、その他マイナーな HTTP リクエストを送りたいときに便利です。 有効な値は、`GET`、`POST`、 `CONNECT` などといったものです。 つまり、ここに完全な HTTP のリクエスト行を入れてはいけません。 例えば、`GET /index.html HTTP/1.0\r\n\r\n` を 入れるのは誤りです。 このオプションは string ないし `null` を受け取ります。 cURL 7.1.0 以降で利用可能です。 注意: サーバーがそのカスタムリクエストメソッドをサポートしていることを確かめるまでは 使わないでください。
`CURLOPT_DEFAULT_PROTOCOL` (int) | URL がスキーム名を持たない場合に使用するデフォルトのプロトコルを string で指定します。 PHP 7.0.7 以降かつ cURL 7.45.0 以降で利用可能です。
`CURLOPT_DIRLISTONLY` (int) | このオプションに `1` を設定すると、 使っているプロトコルによって異なる動作をします。 FTP および SFTP ベースの URL では、ディレクトリ内のファイル名のみを列挙します。 POP3 では、POP3 サーバー上の電子メールメッセージを列挙します。 FILE に対してこのオプションは効果がありません。 このモードではディレクトリは常に列挙されるからです。 このオプションを `CURLOPT_WILDCARDMATCH` と一緒に使うと、 後者の効果がなくなります。 デフォルト値は `0` です。 cURL 7.17.0 以降で利用可能です。
`CURLOPT_DISALLOW_USERNAME_IN_URL` (int) | `true` を指定すると、URL にユーザー名を含められなくなります。 デフォルトではユーザー名を含められます。 PHP 7.3.0 以降かつ cURL 7.61.0 以降で利用可能です。
`CURLOPT_DNS_CACHE_TIMEOUT` (int) | DNS のエントリーをメモリ上に保持する秒数を指定します。 このオプションは、デフォルトで `120` (2分) に設定されています。 このオプションは、有効な int にキャストできる任意の値を受け付けます。 cURL 7.9.3 以降で利用可能です。
`CURLOPT_DNS_INTERFACE` (int) | DNS リゾルバがバインドされているネットワークインターフェース名を指定します。 アドレスではなくインターフェース名を指定する必要があります。 このオプションは string ないし `null` を受け取ります。 PHP 7.0.7 以降かつ cURL 7.33.0 以降で利用可能です。
`CURLOPT_DNS_LOCAL_IP4` (int) | リゾルバがバインドされているローカル IPv4 アドレスを指定します。 この引数は単一の数値 IPv4 アドレスを含んでいる必要があります。 このオプションは string ないし `null` を受け取ります。 PHP 7.0.7 以降かつ cURL 7.33.0 以降で利用可能です。
`CURLOPT_DNS_LOCAL_IP6` (int) | リゾルバがバインドされているローカル IPv5 アドレスを指定します。 この引数は単一の数値 IPv6 アドレスを含んでいる必要があります。 このオプションは string ないし `null` を受け取ります。 PHP 7.0.7 以降かつ cURL 7.33.0 以降で利用可能です。
`CURLOPT_DNS_SERVERS` (int) | システムのデフォルト DNS サーバーの代わりに使用する DNS サーバーのリストを コンマ区切りの string で指定します (例: `192.168.1.100,192.168.1.101:8080`)。 cURL 7.24.0 以降で利用可能です。
`CURLOPT_DNS_SHUFFLE_ADDRESSES` (int) | `true` を指定すると、ドメイン名が複数の IP アドレスへと解決されたとき、 アドレスをランダムな順番で使うために、返却されるアドレスの順序がシャッフルされます。 IPv4 が IPv6 より優先して使われたり、あるいはその逆になったりする可能性があります。 PHP 7.3.0 以降かつ cURL 7.60.0 以降で利用可能です。
`CURLOPT_DNS_USE_GLOBAL_CACHE` (int) | `true` を指定すると、グローバル DNS キャッシュを使うようになります。 このオプションはスレッドセーフではありません。 PHP がシングルスレッド用にビルドされている場合 (CLI、FCGI、Apache2-Prefork 等) に、 条件付きでデフォルトで有効化されます。 cURL 7.9.3 以降で利用可能ですが、cURL 7.11.1 以降は非推奨となりました。 PHP 8.4 以降は、このオプションを指定しても何も起きなくなりました。
`CURLOPT_DOH_SSL_VERIFYHOST` (int) | `2` を指定すると、DNS-over-HTTPS サーバーの SSL 証明書の名前フィールドをホスト名に対して検証します。 PHP 8.2.0 以降かつ cURL 7.76.0 以降で利用可能です。
`CURLOPT_DOH_SSL_VERIFYPEER` (int) | `1` を指定すると、DNS-over-HTTPS サーバーの SSL 証明書の真正性を検証します。 `0` を指定すると検証を無効化します。 PHP 8.2.0 以降かつ cURL 7.76.0 以降で利用可能です。
`CURLOPT_DOH_SSL_VERIFYSTATUS` (int) | `1` を指定すると、DNS-over-HTTPS サーバーの証明書のステータスを TLS 拡張の「証明書ステータス要求」(OCSP stapling) を使って検証します。 `0` を指定すると検証を無効化します。 PHP 8.2.0 以降かつ cURL 7.76.0 以降で利用可能です。
`CURLOPT_DOH_URL` (int) | DNS-over-HTTPS の URL を指定します。 このオプションは string ないし `null` を受け取ります。 PHP 8.1.0 以降かつ cURL 7.62.0 以降で利用可能です。
`CURLOPT_EGDSOCKET` (int) | `CURLOPT_RANDOM_FILE` と似ていますが、 Entropy Gathering Daemon ソケットのファイル名を指定します。 cURL 7.7.0 以降で利用可能ですが、cURL 7.84.0 以降は非推奨となりました。
`CURLOPT_ENCODING` (int) | `Accept-Encoding:` ヘッダーの内容を string で指定します。 これを指定するとレスポンスをデコードするようになります。サポートされているエンコーディングは、 `identity`, `deflate`, `gzip` です。 空の string を指定すると、 サポートされている全エンコーディングタイプを含んだヘッダーが送られます。 cURL 7.10 以降で利用可能ですが、cURL 7.21.6 以降は非推奨となりました。
`CURLOPT_EXPECT_100_TIMEOUT_MS` (int) | `Expect: 100-continue` レスポンスのタイムアウトをミリ秒で指定します。 デフォルト値は `1000` ミリ秒です。 このオプションは、有効な int にキャストできる任意の値を受け付けます。 PHP 7.0.7 以降かつ cURL 7.36.0 以降で利用可能です。
`CURLOPT_FAILONERROR` (int) | `true` を指定すると、返された HTTP コードが 400 以上だったときにエラー情報と共に失敗するようになります。 デフォルトの挙動では、コードを無視して通常どおりページを返します。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_FILE` (int) | 転送データを書き込むファイルのファイルハンドル resource を受け取ります。 デフォルトは `STDOUT` (ブラウザウィンドウ) です。 cURL 7.1.0 以降で利用可能ですが、cURL 7.9.7 以降は非推奨となりました。
`CURLOPT_FILETIME` (int) | `true` を指定すると、リモートのドキュメントの更新日時を取得しようとします。 その値は、curl_getinfo() に `CURLINFO_FILETIME` オプションを使うことで取得できます。 cURL 7.5.0 以降で利用可能です。
`CURLOPT_FNMATCH_FUNCTION` (int) | ワイルドカードのマッチングに用いられる callable を渡します。 コールバックのシグニチャは以下のとおりです。 function callback(resource `$curlHandle`, string `$pattern`, string `$string`): int `curlHandle` cURL ハンドル。 `pattern` ワイルドカードパターン。 `string` ワイルドカードパターンとマッチしているか判定する string。 この関数は、パターンが string とマッチしていれば `CURL_FNMATCHFUNC_MATCH` を、 していなければ `CURL_FNMATCHFUNC_NOMATCH` を、 エラー時は `CURL_FNMATCHFUNC_FAIL` を返さなければなりません。 cURL 7.21.0 以降で利用可能です。
`CURLOPT_FOLLOWLOCATION` (int) | `true` を指定すると、サーバーから HTTP ヘッダーの一部として送られた `Location:` ヘッダーを 追跡するようになります。 `CURLOPT_MAXREDIRS` も合わせてご覧ください。 この定数は open_basedir が有効になっていると利用できません。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_FORBID_REUSE` (int) | `true` を指定すると、処理が完了したとき明示的に接続を閉じ、 再利用のためにプールしないようになります。 cURL 7.7.0 以降で利用可能です。
`CURLOPT_FRESH_CONNECT` (int) | `true` を指定すると、キャッシュされた接続を使う代わりに 必ず新しい接続を用います。 cURL 7.7.0 以降で利用可能です。
`CURLOPT_FTPAPPEND` (int) | `true` を指定すると、リモートのファイルを上書きするのではなく、 追記するようになります。 cURL 7.1.0 以降で利用可能ですが、cURL 7.16.4 以降は非推奨となりました。
`CURLOPT_FTPASCII` (int) | `CURLOPT_TRANSFERTEXT` のエイリアスです。そちらを使用してください。 cURL 7.1 以降で利用可能でしたが、cURL 7.11.1 からは非推奨となっており、 最終的に cURL 7.15.5 まで利用可能でした。 PHP 7.3.0 で削除されました。
`CURLOPT_FTPLISTONLY` (int) | FTP ディレクトリの名前のみを列挙するには `true` を指定します。 cURL 7.1.0 以降で利用可能ですが、cURL 7.16.4 以降は非推奨となりました。
`CURLOPT_FTPPORT` (int) | FTP の `PORT` 命令で使用する IP アドレスを string で指定します。 `PORT` 命令は、ここで指定した IP アドレスに接続するようリモートサーバーに指示します。 この string には、単なる IP アドレス、ホスト名、 ネットワークインターフェース名 (Unix で利用可能)、 または `-` (システムのデフォルト IP アドレスを使用する場合) を指定できます。 このオプションは string ないし `null` を受け取ります。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_FTPSSLAUTH` (int) | FTP over SSL の認証方式 (有効化されている場合) を、 `CURLFTPAUTH_*` 定数のいずれかに指定します。 デフォルト値は `CURLFTPAUTH_DEFAULT` です。 cURL 7.12.2 以降で利用可能です。
`CURLOPT_FTP_ACCOUNT` (int) | ユーザー名とパスワードがサーバーに渡された後、 FTP 上で (`ACCT` コマンドを用いて) アカウント情報として送信される string を設定します。 `null` を指定すると、アカウント情報の送信が無効化されます。 デフォルト値は `null` です。 cURL 7.13.0 以降で利用可能です。
`CURLOPT_FTP_ALTERNATIVE_TO_USER` (int) | `USER/PASS` ネゴシエーションが失敗した場合に FTP での認証を試行するのに使われる string を指定します。 cURL 7.15.5 以降で利用可能です。
`CURLOPT_FTP_CREATE_MISSING_DIRS` (int) | `true` を指定すると、FTP の操作で現在存在しないパスに遭遇した場合に 不足しているディレクトリを作成します。 cURL 7.10.7 以降で利用可能です。
`CURLOPT_FTP_FILEMETHOD` (int) | FTP(S) サーバー上のファイルにアクセスするために使用するメソッドを cURL に指示します。 指定できる値は `CURLFTPMETHOD_*` 定数のいずれかです。 デフォルト値は `CURLFTPMETHOD_MULTICWD` です。 cURL 7.15.1 以降で利用可能です。
`CURLOPT_FTP_RESPONSE_TIMEOUT` (int) | FTP サーバーからのレスポンスを待機するタイムアウト秒数を指定します。 このオプションは `CURLOPT_TIMEOUT` を上書きします。 このオプションは、有効な int にキャストできる任意の値を受け付けます。 このオプション名は PHP 8.4.0 で `CURLOPT_SERVER_RESPONSE_TIMEOUT` へ置き換えられました。 cURL 7.10.8 以降で利用可能ですが、cURL 7.85.0 以降は非推奨となりました。
`CURLOPT_FTP_SKIP_PASV_IP` (int) | このオプションを `1` に設定すると、 cURL は `PASV` コマンドに対する 227 レスポンスでサーバーが提案した IP アドレスを使用せず、 接続に使用した IP アドレスを使うようになります。 227 レスポンスから受信したポート番号は無視されません。 cURL 7.74.0 以降はデフォルト値が `1` で、 それ以前は `0` です。 cURL 7.15.0 以降で利用可能です。
`CURLOPT_FTP_SSL` (int) | cURL 7.11.0 以降で利用可能ですが、cURL 7.16.4 以降は非推奨となりました。
`CURLOPT_FTP_SSL_CCC` (int) | このオプションを指定すると、cURL が CCC (Clear Command Channel) を使うようになり、 認証後に SSL/TLS レイヤーをシャットダウンして、 残りの制御チャネル通信を暗号化しないようになります。 `CURLFTPSSL_CCC_*` 定数のいずれかを使用してください。 デフォルト値は `CURLFTPSSL_CCC_NONE` です。 cURL 7.16.1 以降で利用可能です。
`CURLOPT_FTP_USE_EPRT` (int) | `true` を指定すると、アクティブ FTP ダウンロード時に `EPRT` (および `LPRT`) を使用します。 `false` を指定すると、`EPRT` と `LPRT` を無効にし `PORT` のみを使用します。 cURL 7.10.5 以降で利用可能です。
`CURLOPT_FTP_USE_EPSV` (int) | `true` を指定すると、FTP 転送で `PASV` に戻る前にまず `EPSV` コマンドを試すようになります。 `false` を指定すると `EPSV` が無効になります。 cURL 7.9.2 以降で利用可能です。
`CURLOPT_FTP_USE_PRET` (int) | `1` を指定すると、`PASV` (および `EPSV`) の前に `PRET` コマンドを送るようになります。 アクティブ FTP 転送モードを使用している場合効果はありません。 デフォルト値は `0` です。 cURL 7.20.0 以降で利用可能です。
`CURLOPT_GSSAPI_DELEGATION` (int) | `CURLGSSAPI_DELEGATION_FLAG` を指定すると 無条件で GSSAPI 資格情報の委任を許可します。 `CURLGSSAPI_DELEGATION_POLICY_FLAG` を指定すると サービスチケットで `OK-AS-DELEGATE` フラグが設定されている場合のみ委任します。 デフォルト値は `CURLGSSAPI_DELEGATION_NONE` です。 cURL 7.22.0 以降で利用可能です。
`CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS` (int) | Happy Eyeballs アルゴリズムにおいて IPv6 に与えられるハンデを指定します。Happy Eyeballs は デュアルスタックホストに対して IPv4 と IPv6 の両方のアドレスへ接続を試行し、 このタイムアウトミリ秒の間は IPv6 を優先します。 デフォルト値は `CURL_HET_DEFAULT` (現在は 200 ミリ秒) です。 このオプションは、有効な int にキャストできる任意の値を受け付けます。 PHP 7.3.0 以降かつ cURL 7.59.0 以降で利用可能です。
`CURLOPT_HAPROXYPROTOCOL` (int) | `true` を指定すると、HAProxy `PROXY` プロトコル v1 ヘッダーを接続開始時に送信します。 デフォルトでは送信しません。 PHP 7.3.0 以降かつ cURL 7.60.0 以降で利用可能です。
`CURLOPT_HEADER` (int) | `true` を指定すると、`CURLOPT_WRITEFUNCTION` で定義されたコールバックへと渡される出力に ヘッダーが含まれるようになります。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_HEADERFUNCTION` (int) | 以下のシグニチャの callable を指定します。 function callback(resource `$curlHandle`, string `$headerData`): int `curlHandle` cURL ハンドル。 `headerData` このコールバックが書き込まなければならないヘッダーデータ。 このコールバックは、書き込んだバイト数を返さなければなりません。 cURL 7.7.2 以降で利用可能です。
`CURLOPT_HEADEROPT` (int) | HTTP ヘッダーをプロキシとホストの両方に送信するか、個別に送信するかを設定します。 指定可能な値は `CURLHEADER_*` 定数のいずれかです。 cURL 7.42.1 以降のデフォルト値は `CURLHEADER_SEPARATE` で、 それ以前では `CURLHEADER_UNIFIED` です。 PHP 7.0.7 以降かつ cURL 7.37.0 以降で利用可能です。
`CURLOPT_HSTS` (int) | HSTS (HTTP Strict Transport Security) のキャッシュファイル名を string で指定します。 `null` を指定すると、ファイルの読み書きを行わずに HSTS を行うようになり、 HSTS データを読み込むファイルのリストがクリアされます。 PHP 8.2.0 以降かつ cURL 7.74.0 以降で利用可能です。
`CURLOPT_HSTS_CTRL` (int) | `CURLHSTS_*` 定数で定義された HSTS (HTTP Strict Transport Security) 機能のビットマスクを指定できます。 PHP 8.2.0 以降かつ cURL 7.74.0 以降で利用可能です。
`CURLOPT_HTTP09_ALLOWED` (int) | HTTP/0.9 でのレスポンスを許可するかどうかを指定します。cURL 7.66.0 以降のデフォルト値は `false` です。 それより前のバージョンでは `true` でした。 PHP 7.3.15 および 7.4.3 以降かつ cURL 7.64.0 以降で利用可能です。
`CURLOPT_HTTP200ALIASES` (int) | エラーではなく有効なレスポンスとして扱われる HTTP `200` レスポンスの array を指定します。 cURL 7.10.3 以降で利用可能です。
`CURLOPT_HTTPAUTH` (int) | 使用する HTTP 認証方法のビットマスクです。選択肢は以下のとおりです： `CURLAUTH_BASIC`, `CURLAUTH_DIGEST`, `CURLAUTH_GSSNEGOTIATE`, `CURLAUTH_NTLM`, `CURLAUTH_AWS_SIGV4`, `CURLAUTH_ANY`, `CURLAUTH_ANYSAFE` 2つ以上の認証方法を指定した場合、cURL はサーバーがどの認証方法をサポートしているか 問い合わせ、最適なものを選択します。 `CURLAUTH_ANY` は全ビットをオンにします。cURL は自動的に 最も安全だと思われるものを選択します。 `CURLAUTH_ANYSAFE` は、`CURLAUTH_BASIC` を除いた全ビットをオンにします。 cURL は自動的に最も安全だと思われるものを選択します。 cURL 7.10.6 以降で利用可能です。
`CURLOPT_HTTPGET` (int) | `true` を指定すると、HTTP リクエストのメソッドを `GET` にリセットします。 デフォルトは `GET` のため、これが必要なのはリクエストメソッドが変更されていた場合のみです。 cURL 7.8.1 以降で利用可能です。
`CURLOPT_HTTPHEADER` (int) | HTTP ヘッダーフィールドの array を指定します。各要素の形式は以下のとおりです。 `array('Content-type: text/plain', 'Content-length: 100')` cURL 7.1.0 以降で利用可能です。
`CURLOPT_HTTPPROXYTUNNEL` (int) | `true` を指定すると、与えられた HTTP プロキシを通すようになります。 cURL 7.3.0 以降で利用可能です。
`CURLOPT_HTTP_CONTENT_DECODING` (int) | `false` を指定すると、生の HTTP レスポンスボディを取得できます。 cURL 7.16.2 以降で利用可能です。
`CURLOPT_HTTP_TRANSFER_DECODING` (int) | `0` を指定するとチャンク転送デコード処理を無効にします。 `1` を指定するとチャンク転送デコード処理を有効にします。 このオプションを `0` に設定しない限り、 cURL はチャンク転送デコード処理をデフォルトで実行します。 デフォルト値は `1` です。 cURL 7.16.2 以降で利用可能です。
`CURLOPT_HTTP_VERSION` (int) | `CURL_HTTP_VERSION_*` 定数のいずれかを指定することで、 cURL に指定した HTTP バージョンを使わせることができます。 cURL 7.9.1 以降で利用可能です。
`CURLOPT_IGNORE_CONTENT_LENGTH` (int) | `1` に設定すると、 HTTP レスポンスの `Content-Length` ヘッダーを無視します。 FTP 転送の際には、それを要求したりそれに依存したりしなくなります。 デフォルト値は `0` です。 cURL 7.14.1 以降で利用可能です。
`CURLOPT_INFILE` (int) | アップロード時に読み込まれるファイルの ファイルハンドル resource を指定します。 cURL 7.1.0 以降で利用可能ですが、cURL 7.9.7 以降は非推奨となりました。 代わりに `CURLOPT_READDATA` を使用してください。
`CURLOPT_INFILESIZE` (int) | リモートサイトにファイルをアップロードする際のファイルの予想サイズ (バイト単位) を指定します。 このオプションを使用しても、cURL がより多くのデータを送信する可能性はあります。 実際に送信される内容は `CURLOPT_READFUNCTION` に依存します。 このオプションは、有効な int にキャストできる任意の値を受け付けます。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_INFILESIZE_LARGE` (int) | リモートサイトにファイルをアップロードする際のファイルの予想サイズ (バイト単位) を指定します。 これは `CURLOPT_INFILESIZE` の 64 ビット版で、 2 GB を超えるサイズを指定できます。 PHP 8.5.0 以降で利用可能です。
`CURLOPT_INTERFACE` (int) | 使用する送信ネットワークインターフェースの名前を string で指定します。 インターフェース名、IP アドレス、ホスト名のいずれかが指定できます。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_IPRESOLVE` (int) | ホスト名を解決する際に、使用する IP アドレスの種類をアプリケーションが選択できるようにします。 これは、複数の IP バージョンを利用してアドレスを解決するようなホスト名を使う場合のみ意味があります。 `CURL_IPRESOLVE_*` 定数のいずれかを設定してください。 デフォルト値は `CURL_IPRESOLVE_WHATEVER` です。 cURL 7.10.8 以降で利用可能です。
`CURLOPT_ISSUERCERT` (int) | PEM 形式の CA 証明書を保持するファイル名を string で指定します。 このオプションが指定されると、ピア証明書に対する追加のチェックが実行され、 発行者が指定した証明書と実際に関連付けられているかどうかを確認します。 チェックの結果を失敗と見なすには、 このオプションを `CURLOPT_SSL_VERIFYPEER` オプションと組み合わせて使用する必要があります。 cURL 7.19.0 以降で利用可能です。
`CURLOPT_ISSUERCERT_BLOB` (int) | PEM 形式の CA SSL 証明書のバイナリデータが含まれた string を指定します。 これが設定されていると、ピア証明書に対する追加のチェックが実行され、 発行者がこのオプションで提供された証明書に関連付けられたものであることを確認します。 PHP 8.1.0 以降かつ cURL 7.71.0 以降で利用可能です。
`CURLOPT_KEEP_SENDING_ON_ERROR` (int) | `true` を指定すると、返された HTTP コードが `300` 以上の場合にリクエストボディの送信を継続するようになります。 デフォルトでは、送信を中止し、ストリームないし接続を閉じます。 手動 NTLM 認証に適しています。 ほとんどのアプリケーションではこのオプションは必要ありません。 PHP 7.3.0 以降かつ cURL 7.51.0 以降で利用可能です。
`CURLOPT_KEYPASSWD` (int) | `CURLOPT_SSLKEY` または `CURLOPT_SSH_PRIVATE_KEYFILE` の秘密鍵を 使用するにあたって必要なパスワードを string で指定します。 `null` を設定すると、これらのオプションでパスワードが使えなくなります。 cURL 7.17.0 以降で利用可能です。
`CURLOPT_KRB4LEVEL` (int) | KRB4 (Kerberos 4) のセキュリティレベルを指定します。以下の string 値のいずれか (最弱から最強の順) が有効です： `clear`, `safe`, `confidential`, `private` 指定した string がいずれにも一致しない場合、 `private` が使われます。このオプションを `null` に設定すると KRB4 セキュリティが無効になります。現在、KRB4 セキュリティは FTP トランザクションでのみ動作します。 cURL 7.3.0 以降で利用可能ですが、cURL 7.17.0 以降は非推奨となりました。
`CURLOPT_KRBLEVEL` (int) | FTP の Kerberos セキュリティレベルを設定し、Kerberos に対応させます。 以下の string のいずれかを設定する必要があります： `clear`, `safe`, `confidential`, `private` 指定された string がいずれにも一致しない場合、 `private` が使われます。 このオプションを `null` に設定すると、FTP の Kerberos サポートが無効になります。 デフォルト値は `null` です。 cURL 7.16.4 以降で利用可能です。
`CURLOPT_LOCALPORT` (int) | 接続に用いるソケットのローカルポート番号を指定します。 このオプションは、有効な int にキャストできる任意の値を受け付けます。 デフォルト値は `0` です。 cURL 7.15.2 以降で利用可能です。
`CURLOPT_LOCALPORTRANGE` (int) | cURL が動作するローカルポート番号を探す試行回数を指定します。 検索は `CURLOPT_LOCALPORT` で設定されたポートから開始されます。 このオプションは、有効な int にキャストできる任意の値を受け付けます。 デフォルト値は `1` です。 cURL 7.15.2 以降で利用可能です。
`CURLOPT_LOGIN_OPTIONS` (int) | `AUTH=NTLM` や `AUTH=*` を介した優先認証メカニズムなど、 プロトコル固有のログインオプションを設定します。 `CURLOPT_USERNAME` オプションと併用すべきです。 PHP 7.0.7 以降かつ cURL 7.34.0 以降で利用可能です。
`CURLOPT_LOW_SPEED_LIMIT` (int) | 転送速度がこの値を `CURLOPT_LOW_SPEED_TIME` 秒間下回っていた場合、 PHP は転送を遅すぎるとみなして中止します。 単位はバイト/秒です。 このオプションは、有効な int にキャストできる任意の値を受け付けます。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_LOW_SPEED_TIME` (int) | 転送速度が `CURLOPT_LOW_SPEED_LIMIT` の値をここで指定した秒数の間下回っていた場合、 PHP は転送を遅すぎるとみなして中止します。 このオプションは、有効な int にキャストできる任意の値を受け付けます。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_MAIL_AUTH` (int) | 別のサーバーにリレーされる送信メッセージの認証アドレス (アイデンティティ) を string で指定します。 アドレスは山括弧 (`<>`) で囲まずに指定してください。 空の string が使われた場合、RFC 2554 に従って山括弧の組が送信されます。 cURL 7.25.0 以降で利用可能です。
`CURLOPT_MAIL_FROM` (int) | SMTP メール送信時の送信者のメールアドレスを string で指定します。 このメールアドレスは、山括弧 (`<>`) で囲んで指定する必要があり、 指定されていない場合は自動的に追加されます。 このパラメーターが指定されていない場合、空のアドレスが SMTP サーバーに送信され、メールが拒否される可能性があります。 cURL 7.20.0 以降で利用可能です。
`CURLOPT_MAIL_RCPT` (int) | SMTP メールリクエストでサーバーに渡す受信者を、 string の array で設定します。 それぞれの受信者は、対になった山括弧 (`<>`) で囲んで指定する必要があります。 最初の文字が山括弧でない場合、 cURL は単一のメールアドレスが渡されたものと仮定し、 そのアドレスを括弧で囲みます。 cURL 7.20.0 以降で利用可能です。
`CURLOPT_MAIL_RCPT_ALLLOWFAILS` (int) | `1` を指定すると、`RCPT TO` コマンドが一部の受信者で失敗しても cURL はそのエラーを無視し、残りの成功した受信者に対して処理を継続します。 すべての受信者でエラーになり、このフラグが指定されている場合、 cURL は SMTP 通信を中止し 最後の `RCPT TO` コマンドから受け取ったエラーを返します。 cURL 8.2.0 で `CURLOPT_MAIL_RCPT_ALLOWFAILS` に置き換えられました。 PHP 8.2.0 以降かつ cURL 7.69.0 以降で利用可能です。 cURL 8.2.0 以降は非推奨となっています。
`CURLOPT_MAXAGE_CONN` (int) | 既存の接続が再利用される可能性のある最大アイドル時間を指定します。 デフォルトの最大アイドル時間は `118` 秒です。 このオプションは、有効な int にキャストできる任意の値を受け付けます。 PHP 8.2.0 以降かつ cURL 7.65.0 以降で利用可能です。
`CURLOPT_MAXCONNECTS` (int) | 永続化された接続の最大数を指定します。 制限に達すると、開いている接続の数が増えないよう、 キャッシュ内の最も古いものが閉じられます。 このオプションは、有効な int にキャストできる任意の値を受け付けます。 cURL 7.7.0 以降で利用可能です。
`CURLOPT_MAXFILESIZE` (int) | ダウンロードするファイルの最大受入サイズ (バイト単位) を指定します。 リクエストされたファイルがこの値よりも大きいことがわかると、 転送が中止され、`CURLE_FILESIZE_EXCEEDED` が返されます。 `0` を渡すとこのオプションが無効になり、 負のサイズを渡すと `CURLE_BAD_FUNCTION_ARGUMENT` が返されます。 ダウンロード開始前にファイルサイズがわからない場合、 このオプションは効果がありません。 `2GB`を超えるサイズ制限を設定するには、 `CURLOPT_MAXFILESIZE_LARGE` を使用する必要があります。 cURL 8.4.0 以降では、転送中にこの閾値に達した場合にも 進行中の転送を停止します。 このオプションは、有効な int にキャストできる任意の値を受け付けます。 デフォルト値は `0` です。 cURL 7.10.8 以降で利用可能です。
`CURLOPT_MAXFILESIZE_LARGE` (int) | ダウンロードが許可される最大ファイルサイズ (バイト単位) です。リクエストされたファイルがこの値よりも大きいことが判明した場合、 転送は開始されず、`CURLE_FILESIZE_EXCEEDED` が返されます。 ファイルサイズが必ずしもダウンロード前にわかるとは限りません。そのようなファイルに対しては、 ファイル転送が結果的にこの制限よりも大きくなったとしても、このオプションは効果がありません。 このオプションは、有効な int にキャストできる任意の値を受け付けます。 PHP 8.2.0 以降かつ cURL 7.11.0 以降で利用可能です。
`CURLOPT_MAXLIFETIME_CONN` (int) | 既存の接続が再利用されうる最大時間を、接続が作成されてからの秒数で指定します。 キャッシュ内にこの値よりも古い接続が見つかった場合、進行中の転送が完了するとその接続は再利用されずに閉じられます。 デフォルトは `0` 秒です。これは、このオプションが無効であり、すべての接続が再利用されうることを意味します。 このオプションは、有効な int にキャストできる任意の値を受け付けます。 PHP 8.2.0 以降かつ cURL 7.80.0 以降で利用可能です。
`CURLOPT_MAXREDIRS` (int) | HTTP リダイレクトの最大回数を指定します。`CURLOPT_FOLLOWLOCATION` と合わせて使用してください。 デフォルト値の `20` は、無限リダイレクトを防ぐために設定されています。 `-1` を指定すると何度でもリダイレクトするようになります。`0` を指定すると一切リダイレクトしなくなります。 cURL 7.5.0 以降で利用可能です。
`CURLOPT_MAX_RECV_SPEED_LARGE` (int) | 転送中の累積平均でダウンロードがこの速度 (バイト毎秒単位) を超えた場合、 平均レートをこの値以下に保つために転送を一時停止します。 デフォルトは無制限です。 このオプションは、有効な int にキャストできる任意の値を受け付けます。 cURL 7.15.5 以降で利用可能です。
`CURLOPT_MAX_SEND_SPEED_LARGE` (int) | 転送中の累積平均でアップロードがこの速度 (バイト毎秒単位) を超えた場合、 平均レートをこの値以下に保つために転送を一時停止します。 デフォルトは無制限です。 このオプションは、有効な int にキャストできる任意の値を受け付けます。 cURL 7.15.5 以降で利用可能です。
`CURLOPT_MIME_OPTIONS` (int) | `CURLMIMEOPT_*` 定数のビットマスクを指定します。 現在利用可能なオプションは、 `CURLMIMEOPT_FORMESCAPE` のみです。 PHP 8.3.0 以降かつ cURL 7.81.0 以降で利用可能です。
`CURLOPT_MUTE` (int) | `true` を指定すると cURL 関数に関する出力が完全に抑制されます。 このオプションの代わりに `CURLOPT_RETURNTRANSFER` を使用してください。 cURL 7.1.0 以降で利用可能でしたが、cURL 7.8.0 からは非推奨となっており、 最終的に cURL 7.15.5 まで利用可能でした。 PHP 7.3.0 で削除されました。
`CURLOPT_NETRC` (int) | `true` を指定すると、 接続しているリモートサイトのユーザー名とパスワードを探すために ~/.netrc ファイルをスキャンします。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_NETRC_FILE` (int) | `.netrc` ファイルへのフルパス名を含む string を指定します。 このオプションが省略され、かつ `CURLOPT_NETRC` が設定されている場合、 cURL は現在のユーザーのホームディレクトリにある `.netrc` ファイルをチェックします。 cURL 7.11.0 以降で利用可能です。
`CURLOPT_NEW_DIRECTORY_PERMS` (int) | リモートサーバーで新しく作成されたディレクトリに設定されるパーミッションの値 (int) を設定します。 デフォルト値は `0755` です。 これを使用できるプロトコルは `sftp://`、`scp://`、 `file://` のみです。 cURL 7.16.4 以降で利用可能です。
`CURLOPT_NEW_FILE_PERMS` (int) | リモートサーバーで新しく作成されたファイルに設定されるパーミッションの値 (int) を設定します。 デフォルト値は `0644` です。 これを使用できるプロトコルは `sftp://`、`scp://`、 `file://` のみです。 cURL 7.16.4 以降で利用可能です。
`CURLOPT_NOBODY` (int) | `true` を指定するとボディが出力から除外されます。 HTTP(S) の場合、cURL は HEAD リクエストを実行します。他のほとんどのプロトコルの場合、 cURL はボディデータを一切要求しません。 これを `false` に変更すると、ボディデータが出力に含まれるようになります。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_NOPROGRESS` (int) | `true` を指定すると cURL 転送でプログレスメーターを無効化します。 注意: PHP はこのオプションを自動的に `true` に設定します。 これを変えるのはデバッグ目的のみとしてください。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_NOPROXY` (int) | 到達するのにプロキシを必要としないホスト名を、カンマ区切りのリストからなる string で設定します。 このリスト内のそれぞれの名前は、ホスト名を含むドメインまたはホスト名自体として一致判定がなされます。 この string で利用可能な唯一のワイルドカードは、 すべてのホストにマッチする単一の `*` 文字です。 これを指定すると実質的にプロキシが無効になります。 このオプションに空の string を設定すると、すべてのホスト名でプロキシが有効になります。 cURL 7.86.0 以降では、このオプションで設定する IP アドレスを CIDR 記法で指定できます。 cURL 7.19.4 以降で利用可能です。
`CURLOPT_NOSIGNAL` (int) | `true` を指定すると、PHP プロセスにシグナルを送信しうる cURL 関数を使わないようになります。 マルチスレッド SAPI では、タイムアウトオプションを使えるようにするためにデフォルトで有効になっています。 cURL 7.10 以降で利用可能です。
`CURLOPT_PASSWDFUNCTION` (int) | 以下のシグニチャの callable を指定します。 function callback(resource `$curlHandle`, string `$passwordPrompt`, int `$maximumPasswordLength`): string `curlHandle` cURL ハンドル。 `passwordPrompt` パスワードプロンプト。 `maximumPasswordLength` パスワードの最大長。 このコールバックは、パスワードが入った string を返さなければなりません。 cURL 7.4.2 以降で利用可能でしたが、cURL 7.11.1 からは非推奨となっており、 最終的に cURL 7.15.5 まで利用可能でした。 PHP 7.3.0 で削除されました。
`CURLOPT_PASSWORD` (int) | 認証で使用するパスワードを string で指定します。 cURL 7.19.1 以降で利用可能です。
`CURLOPT_PATH_AS_IS` (int) | `true` を指定すると、cURL が URL パスをサーバーに渡す前に書き換えないようになります。 デフォルトは `false` で、URL のパス部分に含まれているかもしれない `/../` や `/./` の並びを圧縮します。 これらは、RFC 3986 section 5.2.4 に従い削除されるべきと考えられます。 PHP 7.0.7 以降かつ cURL 7.42.0 以降で利用可能です。
`CURLOPT_PINNEDPUBLICKEY` (int) | ピン留めされた (ピンニングされた) 公開鍵を string で指定します。 この string には、PEM または DER 形式のピン留めされた公開鍵のファイル名を指定できます。 また、先頭に `sha256//` を付けて `;` で区切った 任意の数の base64 エンコードされた sha256 ハッシュも指定できます。 PHP 7.0.7 以降かつ cURL 7.39.0 以降で利用可能です。
`CURLOPT_PIPEWAIT` (int) | `true` を指定すると、新しい接続を作成して使用する前に、 既存の接続が多重化できるかどうかを確認し、 可能ならそうするよう待機します。 PHP 7.0.7 以降かつ cURL 7.43.0 以降で利用可能です。
`CURLOPT_PORT` (int) | URL で指定されたポートや使用するプロトコルのデフォルトポートの代わりに 接続する代替ポート番号を int で指定します。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_POST` (int) | `true` を指定すると HTTP の `POST` リクエストを実行します。 このリクエストは `application/x-www-form-urlencoded` ヘッダーを使用します。 デフォルト値は `false` です。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_POSTFIELDS` (int) | HTTP の `POST` 操作で送信する全データです。 このパラメーターには、 '`para1=val1&para2=val2&...`' のような URL エンコードされた string か、 フィールド名をキー、フィールドデータを値とする array のいずれかを渡すことができます。 `value` が array の場合、 `Content-Type` ヘッダーは `multipart/form-data` に設定されます。 ファイルは CURLFile または CURLStringFile を使って送信でき、 その場合 `value` は array でなければなりません。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_POSTQUOTE` (int) | FTP リクエストが実行された後にサーバーで実行する FTP コマンドを string の array で指定します。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_POSTREDIR` (int) | `CURL_REDIR_POST_301`、 `CURL_REDIR_POST_302`、`CURL_REDIR_POST_303` のビットマスクを指定します。 `CURLOPT_FOLLOWLOCATION` が設定されており かつ指定した種類のリダイレクトが発生した場合に、 リダイレクト後のリクエストでも HTTP `POST` メソッドを使い続けるようになります。 cURL 7.19.1 以降で利用可能です。
`CURLOPT_PRE_PROXY` (int) | プレプロキシとして使われるホスト名またはドット区切りの数値 IP アドレスを string で指定します。 プレプロキシは、今後のリクエストにおいて `CURLOPT_PROXY` オプションで 指定された HTTP(S) プロキシへ接続する前に cURL が接続するプロキシサーバーです。 プレプロキシは SOCKS プロキシのみ可能で、使用する socks の種類を指定するために `[scheme]://` を頭に付けるべきです。 数値の IPv6 アドレスは、[角括弧] で囲む必要があります。 プレプロキシを空の string に設定すると、プレプロキシの使用が明示的に無効になります。 この string でポート番号を指定するには、ホスト名の最後に `:[port]` を付加します。 プロキシのポート番号は、必要に応じて個別のオプション `CURLOPT_PROXYPORT` で指定できます。 ポートが指定されていない場合、デフォルトではポート 1080 が使用されます。 PHP 7.3.0 以降かつ cURL 7.52.0 以降で利用可能です。
`CURLOPT_PREQUOTE` (int) | 転送タイプが設定された後にサーバーへ渡す FTP コマンドを string の array で指定します。 これらのコマンドはディレクトリ列挙を行う際には実行されず、 ファイル転送のみで実行されます。 cURL 7.9.5 以降で利用可能です。
`CURLOPT_PRIVATE` (int) | この cURL ハンドルに関連付ける任意のデータを指定します。 このデータは、後に curl_getinfo() の `CURLINFO_PRIVATE` オプションを使って取得できます。 cURL はこのデータに対して何も行いません。 cURL のマルチハンドルを使用する場合、このプライベートデータには通常 標準的な cURL ハンドルを識別するための一意なキーを指定します。 cURL 7.10.3 以降で利用可能です。
`CURLOPT_PROGRESSFUNCTION` (int) | 以下のシグニチャの callable を指定します。 function callback( resource `$curlHandle`, int `$bytesToDownload`, int `$bytesDownloaded`, int `$bytesToUpload`, int `$bytesUploaded` ): int `curlHandle` cURL ハンドル。 `bytesToDownload` この転送でダウンロードされようとしている総バイト数。 `bytesDownloaded` これまでにダウンロードされたバイト数。 `bytesToUpload` この転送でアップロードされようとしている総バイト数。 `bytesUploaded` これまでにアップロードされたバイト数。 転送を中断し、`CURLE_ABORTED_BY_CALLBACK` エラーをセットするには、 このコールバックから非ゼロの int を返してください。 注意: このコールバックが呼ばれるのは、`CURLOPT_NOPROGRESS` オプションが `false` に設定されている場合のみです。 cURL 7.1.0 以降で利用可能ですが、cURL 7.32.0 以降は非推奨となりました。 代わりに `CURLOPT_XFERINFOFUNCTION` を用いてください。
`CURLOPT_PROTOCOLS` (int) | `CURLPROTO_*` 値のビットマスクを指定します。 これが使われた場合、cURL が転送で使用できるプロトコルを制限します。 デフォルトは `CURLPROTO_ALL` で、cURL はサポートするすべてのプロトコルを受け入れます。 `CURLOPT_REDIR_PROTOCOLS` も参照してください。 cURL 7.19.4 以降で利用可能ですが、cURL 7.85.0 以降は非推奨となりました。
`CURLOPT_PROTOCOLS_STR` (int) | 転送で許可するプロトコル名 (URL スキーム) をカンマ区切りリストの string で指定します。 大文字小文字は区別しません。 `ALL` を指定すると全てのプロトコルが許可されます。 デフォルトでは、サポートする全プロトコルを受け入れます。 利用可能なプロトコルは以下のとおりです： `DICT`, `FILE`, `FTP`, `FTPS`, `GOPHER`, `GOPHERS`, `HTTP`, `HTTPS`, `IMAP`, `IMAPS`, `LDAP`, `LDAPS`, `MQTT`, `POP3`, `POP3S`, `RTMP`, `RTMPE`, `RTMPS`, `RTMPT`, `RTMPTE`, `RTMPTS`, `RTSP`, `SCP`, `SFTP`, `SMB`, `SMBS`, `SMTP`, `SMTPS`, `TELNET`, `TFTP`, `WS`, `WSS` PHP 8.3.0 以降かつ cURL 7.85.0 以降で利用可能です。
`CURLOPT_PROXY` (int) | リクエストをトンネリングする HTTP プロキシを string で指定します。 ホスト名、ドット区切りの数値 IP アドレス、 [角括弧] 内に書かれた数値 IPv6 アドレスのいずれかである必要があります。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_PROXYAUTH` (int) | プロキシ接続で使用する HTTP 認証方法を `CURLAUTH_*` 定数のビットマスクで指定します。 プロキシ認証では、現在 `CURLAUTH_BASIC` と `CURLAUTH_NTLM` のみがサポートされています。 デフォルト値は `CURLAUTH_BASIC` です。 cURL 7.10.7 以降で利用可能です。
`CURLOPT_PROXYHEADER` (int) | プロキシに渡すカスタム HTTP ヘッダーを string の array で指定します。 PHP 7.0.7 以降かつ cURL 7.37.0 以降で利用可能です。
`CURLOPT_PROXYPASSWORD` (int) | プロキシでの認証に使用するパスワードを string で指定します。 cURL 7.19.1 以降で利用可能です。
`CURLOPT_PROXYPORT` (int) | 接続するプロキシのポート番号を int で指定します。 このポート番号は `CURLOPT_PROXY` でも設定できます。 これを 0 に設定すると、cURL はデフォルトのプロキシポート番号か プロキシ URL string で指定されたポート番号を使用します。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_PROXYTYPE` (int) | プロキシの種類を `CURLPROXY_*` 定数のいずれかで指定します。 デフォルト値は `CURLPROXY_HTTP` です。 cURL 7.10 以降で利用可能です。
`CURLOPT_PROXYUSERNAME` (int) | プロキシでの認証に使用するユーザー名を string で指定します。 cURL 7.19.1 以降で利用可能です。
`CURLOPT_PROXYUSERPWD` (int) | プロキシへの接続で使用するユーザー名とパスワードを、 `[ユーザー名]:[パスワード]` の形式の string で指定します。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_PROXY_CAINFO` (int) | プロキシ Certificate Authority (CA) バンドルへのパスを指定します。 HTTPS プロキシを検証するための一つ以上の証明書を保持するファイルのパスを string で指定します。 このオプションは HTTPS プロキシへの接続用であり、HTTPS サーバー用ではありません。 デフォルトでは、cURL の cacert バンドルが格納されていると思われる システムパスに設定されます。 PHP 7.3.0 以降かつ cURL 7.52.0 以降で利用可能です。
`CURLOPT_PROXY_CAINFO_BLOB` (int) | HTTPS プロキシを検証するための一つ以上の証明書を保持する PEM ファイルの名前を string で指定します。 このオプションは HTTPS プロキシへの接続用であり、HTTPS サーバー用ではありません。 デフォルトでは、cURL の cacert バンドルが格納されていると思われる システムパスに設定されます。 PHP 8.2.0 以降かつ cURL 7.77.0 以降で利用可能です。
`CURLOPT_PROXY_CAPATH` (int) | HTTPS プロキシを検証するための CA 証明書が格納されたディレクトリを string で指定します。 PHP 7.3.0 以降かつ cURL 7.52.0 以降で利用可能です。
`CURLOPT_PROXY_CRLFILE` (int) | SSL 交換中の証明書検証で使用する PEM 形式の CRL (Certificate Revocation List; 証明書失効リスト) を 記載したファイルの名前を string で指定します。 PHP 7.3.0 以降かつ cURL 7.52.0 以降で利用可能です。
`CURLOPT_PROXY_ISSUERCERT` (int) | プロキシ発行者の SSL 証明書ファイル名を string で指定します。 PHP 8.1.0 以降かつ cURL 7.71.0 以降で利用可能です。
`CURLOPT_PROXY_ISSUERCERT_BLOB` (int) | プロキシ発行者の SSL 証明書を含む string を指定します。 PHP 8.1.0 以降かつ cURL 7.71.0 以降で利用可能です。
`CURLOPT_PROXY_KEYPASSWD` (int) | `CURLOPT_PROXY_SSLKEY` の秘密鍵を使用するために必要なパスワードを string で指定します。 証明書を読み込むのにはパスフレーズは不要ですが、 秘密鍵を読み込むためには必要です。 このオプションは HTTPS プロキシへの接続用です。HTTPS サーバーへの接続用ではありません。 PHP 7.3.0 以降かつ cURL 7.52.0 以降で利用可能です。
`CURLOPT_PROXY_PINNEDPUBLICKEY` (int) | HTTPS プロキシ用のピン留めされた (ピンニングされた) 公開鍵を指定します。 この string には、PEM または DER 形式のピン留めされた公開鍵のファイル名を指定できます。 また、先頭に `sha256//` を付けて `;` で区切った 任意の数の base64 エンコードされた sha256 ハッシュも指定できます。 PHP 7.3.0 以降かつ cURL 7.52.0 以降で利用可能です。
`CURLOPT_PROXY_SERVICE_NAME` (int) | プロキシ認証サービス名を string で指定します。 PHP 7.0.7 以降かつ、HTTP プロキシを使う場合は cURL 7.43.0 以降、SOCKS5 プロキシを使う場合は cURL 7.49.0 以降で利用可能です。
`CURLOPT_PROXY_SSLCERT` (int) | HTTPS プロキシへの接続に用いるクライアント証明書のファイル名を string で指定します。 Secure Transport でのデフォルト形式は `P12`、その他のエンジンでのデフォルト形式は `PEM` です。 この形式は `CURLOPT_PROXY_SSLCERTTYPE` で変更できます。 NSS または Secure Transport では、セキュリティデータベースで名前が付けられた 証明書のニックネームも指定できます。 カレントディレクトリのファイルを使う場合、 ニックネームとの混同を避けるために `./` を頭に付ける必要があります。 PHP 7.3.0 以降かつ cURL 7.52.0 以降で利用可能です。
`CURLOPT_PROXY_SSLCERTTYPE` (int) | HTTPS プロキシへの接続時に使用するクライアント証明書の形式を string で指定します。 Secure Transport 以外では、サポートされている形式は `PEM` と `DER` です。 OpenSSL (バージョン 0.9.3 以降) と Secure Transport (iOS 5 以降または OS X 10.7 以降) では、PKCS#12 でエンコードされたファイル用の `P12` もサポートします。デフォルトは `PEM` です。 PHP 7.3.0 以降かつ cURL 7.52.0 以降で利用可能です。
`CURLOPT_PROXY_SSLCERT_BLOB` (int) | SSL プロキシクライアント証明書を含む string を指定します。 PHP 8.1.0 以降かつ cURL 7.71.0 以降で利用可能です。
`CURLOPT_PROXY_SSLKEY` (int) | HTTPS プロキシへの接続に使用する秘密鍵のファイル名を string で指定します。 デフォルトの形式は `PEM`で、 `CURLOPT_PROXY_SSLKEYTYPE` を使って変更できます。 (iOS および Mac OS X の場合) Secure Transport を使うように cURL をビルドした場合、このオプションは無視されます。 TLS を有効にしてビルドした場合にのみ利用可能です。 PHP 7.3.0 以降かつ cURL 7.52.0 以降で利用可能です。
`CURLOPT_PROXY_SSLKEYTYPE` (int) | 秘密鍵の形式を string で指定します。 サポートされている形式は以下のとおりです： `PEM`, `DER`, `ENG`。 PHP 7.3.0 以降かつ cURL 7.52.0 以降で利用可能です。
`CURLOPT_PROXY_SSLKEY_BLOB` (int) | HTTPS プロキシへ接続するための秘密鍵を含む string を指定します。 PHP 8.1.0 以降かつ cURL 7.71.0 以降で利用可能です。
`CURLOPT_PROXY_SSLVERSION` (int) | 希望する HTTPS プロキシの TLS バージョンを `CURL_SSLVERSION_*` 定数のいずれかで指定します。 デフォルト値は `CURL_SSLVERSION_DEFAULT` です。 警告 このオプションは設定せずに、デフォルトをそのまま用いた方がよいでしょう。 デフォルトの `CURL_SSLVERSION_DEFAULT` は、 リモートの SSL プロトコルのバージョンを判別しようと試みます。 PHP 7.3.0 以降かつ cURL 7.52.0 以降で利用可能です。
`CURLOPT_PROXY_SSL_CIPHER_LIST` (int) | HTTPS プロキシへの接続に使用する暗号をコロン区切りの string で指定します。 OpenSSL で使用する場合、カンマとスペースも区切り文字として使うことができ、 `!`、`-`、`+` を演算子として使用できます。 PHP 7.3.0 以降かつ cURL 7.52.0 以降で利用可能です。
`CURLOPT_PROXY_SSL_OPTIONS` (int) | プロキシの SSL 動作オプションを指定します。 これは `CURLSSLOPT_*` 定数のビットマスクです。 PHP 7.3.0 以降かつ cURL 7.52.0 以降で利用可能です。
`CURLOPT_PROXY_SSL_VERIFYHOST` (int) | `2` を指定すると、HTTPS プロキシの証明書名フィールドをプロキシ名と照合して検証します。 `0` を指定すると、証明書で使用されている名前に関係なく接続が成功します。 この機能は注意して使用してください！ cURL 7.28.0 以前では、`1` をデバッグオプションとして指定できます。 cURL 7.28.1 から 7.65.3では、`1` を指定すると `CURLE_BAD_FUNCTION_ARGUMENT` が返されます。 cURL 7.66.0 以降では `1` は `2` と同じ値として扱われます。 デフォルト値は `2` です。 本番環境では、このオプションの値は `2` のままにしておくべきです。 PHP 7.3.0 以降かつ cURL 7.52.0 以降で利用可能です。
`CURLOPT_PROXY_SSL_VERIFYPEER` (int) | `false` を指定すると cURL が ピア証明書を検証しなくなります。 検証に使用する代替証明書は `CURLOPT_CAINFO` オプションで指定するか、 証明書ディレクトリを `CURLOPT_CAPATH` オプションで指定できます。 `false` を指定すると、ピア証明書の検証は無条件で成功します。 デフォルトは `true` です。 PHP 7.3.0 以降かつ cURL 7.52.0 以降で利用可能です。
`CURLOPT_PROXY_TLS13_CIPHERS` (int) | プロキシへの TLS 1.3 接続に使用する暗号をコロン区切りの string で指定します。 このオプションは現在、cURL が OpenSSL 1.1.1 以降を使用してビルドされた場合にのみ使用されます。 その他の SSL バックエンドを使用する場合、TLS 1.3 の暗号スイートは `CURLOPT_PROXY_SSL_CIPHER_LIST` オプションで設定できます。 PHP 7.3.0 以降かつ cURL 7.61.0 以降で利用可能です。
`CURLOPT_PROXY_TLSAUTH_PASSWORD` (int) | `CURLOPT_PROXY_TLSAUTH_TYPE` オプションで指定された TLS の認証方法で用いるパスワードを string で指定します。 `CURLOPT_PROXY_TLSAUTH_USERNAME` オプションも合わせて設定する必要があります。 PHP 7.3.0 以降かつ cURL 7.52.0 以降で利用可能です。
`CURLOPT_PROXY_TLSAUTH_TYPE` (int) | HTTPS 接続で用いられる TLS の認証方法を string で指定します。 サポートされている方法は `SRP` です。 注意: TLS の Secure Remote Password (SRP) 認証は、両者が共有シークレットを持っている場合に 相互認証を提供します。TLS-SRP を使用するには、 `CURLOPT_PROXY_TLSAUTH_USERNAME` オプションと `CURLOPT_PROXY_TLSAUTH_PASSWORD` オプションも設定する必要があります。 PHP 7.3.0 以降かつ cURL 7.52.0 以降で利用可能です。
`CURLOPT_PROXY_TLSAUTH_USERNAME` (int) | `CURLOPT_PROXY_TLSAUTH_TYPE`オプションで指定された HTTPS プロキシの TLS 認証方法に使用するユーザー名を指定します。 `CURLOPT_PROXY_TLSAUTH_PASSWORD` オプションも合わせて設定する必要があります。 PHP 7.3.0 以降かつ cURL 7.52.0 以降で利用可能です。
`CURLOPT_PROXY_TRANSFER_MODE` (int) | `1` を指定すると、HTTP のプロキシを経由して行われる FTP 転送の転送モード (バイナリないし ASCII) を設定するために URL へ `type=a` または `type=i` を付加するようになります。 この設定がなかったり `0` に設定されていたりする場合、 プロキシ経由で FTP を実行するにあたって `CURLOPT_TRANSFERTEXT` は無視されます。 デフォルト値は `0` です。 cURL 7.18.0 以降で利用可能です。
`CURLOPT_PUT` (int) | `true` を指定すると HTTP PUT でファイルを送信します。PUT するファイルは `CURLOPT_READDATA` と `CURLOPT_INFILESIZE` で設定しなければなりません。 cURL 7.1.0 以降で利用可能ですが、cURL 7.12.1 以降は非推奨となりました。
`CURLOPT_QUICK_EXIT` (int) | `true` を指定すると、cURL がタイムアウトから復帰する際に、リソースの解放処理をスキップします。 これにより、関連リソースがリークする可能性を犠牲にして、 cURL プロセスを迅速に終了できるようになります。 PHP 8.3.0 以降かつ cURL 7.87.0 以降で利用可能です。
`CURLOPT_QUOTE` (int) | FTP リクエストの前にサーバーで実行する FTP コマンドを string の array で指定します。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_RANDOM_FILE` (int) | SSL 用の乱数生成器のシードに用いるファイル名を string で指定します。 cURL 7.7.0 以降で利用可能ですが、cURL 7.84.0 以降は非推奨となりました。
`CURLOPT_RANGE` (int) | 取得するデータの範囲を `X-Y` 形式の string で指定します (X、Y の片方は省略できます)。 HTTP 転送では、`X-Y,N-M` 形式でカンマ区切りの複数の範囲も指定できます。 `null` を指定すると、バイト範囲のリクエストは無効になります。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_READDATA` (int) | `CURLOPT_READFUNCTION` で設定されたファイル読み取り関数によって 使用されるファイルポインタ resource を指定します。 cURL 7.9.7 以降で利用可能です。
`CURLOPT_READFUNCTION` (int) | 以下のシグニチャの callable を指定します。 function callback(resource `$curlHandle`, resource `$streamResource`, int `$maxAmountOfDataToRead`): string `curlHandle` cURL ハンドル。 `streamResource` `CURLOPT_READDATA` オプションを通して cURL へと渡されたストリーム resource。 `maxAmountOfDataToRead` 読み出すべきデータの最大長。 このコールバックは、要求されたデータ長以下の string を 返さなければなりません。 典型的には、渡されたストリーム resource からデータを読み出して返します。 `EOF` を伝えるためには空の string を返してください。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_REDIR_PROTOCOLS` (int) | `CURLOPT_FOLLOWLOCATION` が有効な場合に、 リダイレクトで追跡する際の使用可能なプロトコルを `CURLPROTO_*` 値のビットマスクで制限します。 これにより、特定の転送でリダイレクト時にプロトコルのサブセットのみを使用するように制限できます。 cURL 7.19.4 以降、cURL はデフォルトで `FILE` と `SCP` を除く すべてのプロトコルで追跡を許可します。 cURL 7.19.4 より前は、cURL はサポートされているすべてのプロトコルを無条件で追跡していました。 プロトコルの定数については `CURLOPT_PROTOCOLS` も参照してください。 cURL 7.19.4 以降で利用可能ですが、cURL 7.85.0 以降は非推奨となりました。
`CURLOPT_REDIR_PROTOCOLS_STR` (int) | `CURLOPT_FOLLOWLOCATION` が有効な場合に、リダイレクトでの追跡を許可する プロトコル名 (URL スキーム) をカンマ区切りリストの string で指定します。 プロトコル名の大文字小文字は区別しません。 `ALL` を指定するとすべてのプロトコルで追跡を有効にします。 cURL 7.65.2 以降、デフォルトは `FTP`、 `FTPS`、`HTTP`、`HTTPS` です。 cURL 7.40.0 から 7.65.1 では、 `FILE`、`SCP`、`SMB`、 `SMBS` を除くすべてのプロトコルがデフォルトでした。 cURL 7.40.0 より前は、`FILE` と `SCP` を除く すべてのプロトコルがデフォルトでした。 利用可能なプロトコルは以下のとおりです： `DICT`, `FILE`, `FTP`, `FTPS`, `GOPHER`, `GOPHERS`, `HTTP`, `HTTPS`, `IMAP`, `IMAPS`, `LDAP`, `LDAPS`, `MQTT`, `POP3`, `POP3S`, `RTMP`, `RTMPE`, `RTMPS`, `RTMPT`, `RTMPTE`, `RTMPTS`, `RTSP`, `SCP`, `SFTP`, `SMB`, `SMBS`, `SMTP`, `SMTPS`, `TELNET`, `TFTP`, `WS`, `WSS` PHP 8.3.0 以降かつ cURL 7.85.0 以降で利用可能です。
`CURLOPT_REFERER` (int) | HTTP リクエストで使用する `Referer:` ヘッダーの内容を string で指定します。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_REQUEST_TARGET` (int) | URL から抽出されたパスに代わって 今後のリクエストで使用するパスを string で指定します。 PHP 7.3.0 以降かつ cURL 7.55.0 以降で利用可能です。
`CURLOPT_RESOLVE` (int) | 特定のホスト・ポートの組み合わせに対するカスタムアドレスを、 コロン区切りの string の array で指定します。 具体的な形式は以下のとおりです： `array( "example.com:80:127.0.0.1", "example2.com:443:127.0.0.2", )` cURL 7.21.3 以降で利用可能です。
`CURLOPT_RESUME_FROM` (int) | 転送を再開するバイト単位のオフセットを指定します。 このオプションは、有効な int にキャストできる任意の値を受け付けます。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_RETURNTRANSFER` (int) | `true` を指定すると、転送の出力を直接出力する代わりに、 curl_exec() の戻り値として string の形で返します。
`CURLOPT_RTSP_CLIENT_CSEQ` (int) | 次の RTSP リクエストに対して発行する CSEQ 番号を int で指定します。 アプリケーションが以前切断された接続を再開するときに有用です。 以後 CSEQ はこの新しい番号からインクリメントされます。 デフォルト値は `0` です。 cURL 7.20.0 以降で利用可能です。
`CURLOPT_RTSP_REQUEST` (int) | 作成する RTSP リクエストの種類を指定します。 `CURL_RTSPREQ_*` 定数のいずれかを使う必要があります。 cURL 7.20.0 以降で利用可能です。
`CURLOPT_RTSP_SERVER_CSEQ` (int) | 次のサーバーからクライアントへの RTSP リクエストで期待する CSEQ 番号を int で指定します。 この機能 (サーバーリクエストの待ち受け) は未実装です。 デフォルト値は `0` です。 cURL 7.20.0 以降で利用可能です。
`CURLOPT_RTSP_SESSION_ID` (int) | このハンドルの現在の RTSP セッション ID の値を string で指定します。 この値が何らかの非 `null` 値に設定されると、 サーバーから受信した ID が一致しない場合 cURL は `CURLE_RTSP_SESSION_ERROR` を返します。 `null` に設定されている場合、サーバーが最初にレスポンス内で ID を設定したときに cURL が自動的に ID を設定します。 デフォルトは `null` です。 cURL 7.20.0 以降で利用可能です。
`CURLOPT_RTSP_STREAM_URI` (int) | 操作するストリーム URI を string で指定します。 設定されていない場合、cURL は RTSP ストリーム URI の代わりに `*` を渡し、 一般的なサーバーオプションで動作します。 RTSP の場合、`CURLOPT_RTSP_STREAM_URI` は リクエストヘッダーでサーバーへ送信する URL を表し、 `CURLOPT_URL` は接続先を示します。 cURL 7.20.0 以降で利用可能です。
`CURLOPT_RTSP_TRANSPORT` (int) | この RTSP セッションの `Transport:` ヘッダーを指定します。 cURL 7.20.0 以降で利用可能です。
`CURLOPT_SAFE_UPLOAD` (int) | 常に `true` です (訳注: `true` 以外の値を設定しようとするとエラーになります)。 cURL では `CURLOPT_POSTFIELDS` で `@` から始まる値を渡すことで ファイルをアップロードできますが、これを無効にします。 これにより、`@` で始まる値をフィールドとして安全に渡すことができます。 ファイルのアップロードには CURLFile が代わりに使用できます。
`CURLOPT_SASL_AUTHZID` (int) | 転送で用いる認可 ID (authzid) を string で指定します。 これは PLAIN SASL 認証メカニズムのみに適用され、指定は任意です。 指定されていない場合、ユーザー名で指定された認証 ID (authcid) のみがパスワードとともにサーバーに送信されます。 authzid が与えられていない場合、サーバーは authcid から authzid を導出し、それを内部的に使用します。 PHP 8.2.0 以降かつ cURL 7.66.0 以降で利用可能です。
`CURLOPT_SASL_IR` (int) | `true` を指定すると、最初のパケットで初期レスポンスの送信が有効になります。 PHP 7.0.7 以降かつ cURL 7.31.0 以降で利用可能です。
`CURLOPT_SERVICE_NAME` (int) | 認証サービス名を string で指定します。 PHP 7.0.7 以降かつ cURL 7.43.0 以降で利用可能です。
`CURLOPT_SHARE` (int) | curl_share_init() の返り値を渡します。 この cURL ハンドルが、指定した共有ハンドルのデータを使用するようにします。 cURL 7.10 以降で利用可能です。
`CURLOPT_SOCKS5_AUTH` (int) | 使用する SOCKS5 の認証方法を指定します。選択肢は以下のとおりです： `CURLAUTH_BASIC`, `CURLAUTH_GSSAPI`, `CURLAUTH_NONE` 複数のメソッドが設定されている場合、cURL はサーバーをポーリングして サポートされるメソッドを確認し、最適なものを選択します。 デフォルト値は `CURLAUTH_BASIC|CURLAUTH_GSSAPI` です。 実際のユーザー名とパスワードは `CURLOPT_PROXYUSERPWD` オプションで設定します。 PHP 7.3.0 以降かつ cURL 7.55.0 以降で利用可能です。
`CURLOPT_SOCKS5_GSSAPI_NEC` (int) | `1` を指定すると GSSAPI ネゴシエーションの一部としての保護モードネゴシエーションの非保護交換を有効にします。 `0` を指定すると無効にします。 cURL 7.19.4 以降で利用可能です。
`CURLOPT_SOCKS5_GSSAPI_SERVICE` (int) | SOCKS5 サービスの名前を string で指定します。 デフォルト値は `rcmd` です。 cURL 7.19.4 以降で利用可能ですが、cURL 7.49.0 以降は非推奨となりました。 代わりに `CURLOPT_PROXY_SERVICE_NAME` を使用してください。
`CURLOPT_SSH_AUTH_TYPES` (int) | 以下の定数の 1 つ以上から構成されるビットマスクを指定します： `CURLSSH_AUTH_PUBLICKEY`, `CURLSSH_AUTH_PASSWORD`, `CURLSSH_AUTH_HOST`, `CURLSSH_AUTH_KEYBOARD`, `CURLSSH_AUTH_AGENT`, `CURLSSH_AUTH_ANY` デフォルト値は `CURLSSH_AUTH_ANY` です。 cURL 7.16.1 以降で利用可能です。
`CURLOPT_SSH_COMPRESSION` (int) | `true` を指定すると内蔵の SSH 圧縮が有効になり、`false` を指定すると無効になります。 サーバーがこのリクエストを無視する可能性があることに注意してください。 デフォルト値は `false` です。 PHP 7.3.0 以降かつ cURL 7.56.0 以降で利用可能です。
`CURLOPT_SSH_HOSTKEYFUNCTION` (int) | SSH ホストキーの検証が必要になった場合に呼ばれる callable を指定します。 このコールバックは、以下のシグニチャである必要があります。 function callback( resource `$curlHandle`, int `$keyType`, string `$key`, int `$keyLength` ): int `curlHandle` cURL ハンドル。 `keyType` `CURLKHTYPE_*` のうちいずれかのキーの種類。 `key` チェックするキー。 `keyLength` キーのバイト長。 このコールバックは `CURLOPT_SSH_KNOWNHOSTS` を上書きします。 PHP 8.3.0 以降かつ cURL 7.84.0 以降で利用可能です。
`CURLOPT_SSH_HOST_PUBLIC_KEY_MD5` (int) | リモートホストの公開鍵の MD5 チェックサムを、32 桁の十六進数の string で指定します。 md5sum が一致しない限り、cURL はホストへの接続を拒否します。 このオプションは SCP 転送と SFTP 転送のみに対応しています。 cURL 7.17.1 以降で利用可能です。
`CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256` (int) | リモートホストの公開鍵の SHA256 ハッシュを、base64 エンコードされた string で指定します。 与えられたハッシュがリモートホストから提供されるハッシュと一致しない場合、転送は失敗します。 PHP 8.2.0 以降かつ cURL 7.80.0 以降で利用可能です。
`CURLOPT_SSH_KNOWNHOSTS` (int) | 使用する known_host ファイルの名前を指定します。 このファイルには、libssh2 でサポートされている OpenSSH ファイル形式を用いてください。 cURL 7.19.6 以降で利用可能です。
`CURLOPT_SSH_PRIVATE_KEYFILE` (int) | 秘密鍵のファイル名を指定します。このオプションが指定されない場合、 環境変数 HOME が設定されていれば $HOME/.ssh/id_dsa を、 設定されていなければカレントディレクトリの `id_dsa` をデフォルトとします。 ファイルがパスワードで保護されている場合、 `CURLOPT_KEYPASSWD` でパスワードを指定します。 cURL 7.16.1 以降で利用可能です。
`CURLOPT_SSH_PUBLIC_KEYFILE` (int) | 公開鍵のファイル名を指定します。このオプションが指定されない場合、 環境変数 HOME が設定されていれば $HOME/.ssh/id_dsa.pub を、 設定されていなければカレントディレクトリの `id_dsa.pub` をデフォルトとします。 cURL 7.16.1 以降で利用可能です。
`CURLOPT_SSLCERT` (int) | PEM 形式の証明書を含むファイル名を指定します。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_SSLCERTPASSWD` (int) | `CURLOPT_SSLCERT` の証明書を使用するために必要なパスワードを指定します。 cURL 7.1.0 以降で利用可能ですが、cURL 7.17.0 以降は非推奨となりました。
`CURLOPT_SSLCERTTYPE` (int) | 証明書のフォーマットを string で指定します。サポートされているフォーマット： `PEM`, `DER`, `ENG`, `P12` `P12` (PKCS#12 でエンコードされたファイル用) は OpenSSL 0.9.3 以降で利用可能です。 デフォルト値は `PEM` です。 cURL 7.9.3 以降で利用可能です。
`CURLOPT_SSLCERT_BLOB` (int) | SSL のクライアント証明書を string で指定します。 PHP 8.1.0 以降かつ cURL 7.71.0 以降で利用可能です。
`CURLOPT_SSLENGINE` (int) | `CURLOPT_SSLKEY` で指定された SSL 秘密鍵で用いる暗号化エンジンの識別子を string で指定します。 cURL 7.9.3 以降で利用可能です。
`CURLOPT_SSLENGINE_DEFAULT` (int) | 非対称暗号化操作に用いられる暗号化エンジンの識別子を string で指定します。 cURL 7.9.3 以降で利用可能です。
`CURLOPT_SSLKEY` (int) | SSL 秘密鍵を含むファイル名を指定します。 cURL 7.9.3 以降で利用可能です。
`CURLOPT_SSLKEYPASSWD` (int) | `CURLOPT_SSLKEY` で指定された SSL 秘密鍵を使用するために必要な秘密パスワードを設定します。 注意: このオプションには機密パスワードが含まれているため、 これを含む PHP スクリプトを必ず安全に保つようにしてください。 cURL 7.9.3 以降で利用可能ですが、cURL 7.17.0 以降は非推奨となりました。
`CURLOPT_SSLKEYTYPE` (int) | `CURLOPT_SSLKEY` で指定された SSL の秘密鍵の種類を設定します。 サポートされている鍵の種類は以下のとおりです： `PEM`, `DER`, `ENG` デフォルト値は `PEM` です。 cURL 7.9.3 以降で利用可能です。
`CURLOPT_SSLKEY_BLOB` (int) | クライアント証明書用の秘密鍵を string で指定します。 PHP 8.1.0 以降かつ cURL 7.71.0 以降で利用可能です。
`CURLOPT_SSLVERSION` (int) | `CURL_SSLVERSION_*` 定数のいずれかを指定します。 警告 このオプションは設定せずに、デフォルトをそのまま用いた方がよいでしょう。 これを `CURL_SSLVERSION_SSLv2` や `CURL_SSLVERSION_SSLv3` に設定するのは、 SSLv2 や SSLv3 の既知の脆弱性を考えれば極めて危険です。 デフォルト値は `CURL_SSLVERSION_DEFAULT` です。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_SSL_CIPHER_LIST` (int) | TLS 1.2 (1.1、1.0) の接続に用いる暗号をコロン区切りの string で指定します。 cURL 7.9 以降で利用可能です。
`CURLOPT_SSL_EC_CURVES` (int) | 楕円曲線アルゴリズムをコロン区切りリストで指定します。例えば、 `X25519:P-521` は 2 つの楕円曲線を指定している有効なリストです。 このオプションは、cURL をビルドする際に指定した SSL バックエンドがそのアルゴリズムをサポートしていれば、 SSL ハンドシェイクにおけるクライアントの鍵交換アルゴリズムを定義します。 PHP 8.2.0 以降かつ cURL 7.73.0 以降で利用可能です。
`CURLOPT_SSL_ENABLE_ALPN` (int) | `false` を指定すると SSL ハンドシェイクで ALPN を無効にします (cURL をビルドする際に指定した SSL バックエンドがそれをサポートしている場合)。 ALPN は http2 のネゴシエーションに使われるものです。 PHP 7.0.7 以降かつ cURL 7.36.0 以降で利用可能です。
`CURLOPT_SSL_ENABLE_NPN` (int) | `false` を指定すると SSL ハンドシェイクで NPN を無効にします (cURL をビルドする際に指定した SSL バックエンドがそれをサポートしている場合)。 NPN は http2 のネゴシエーションに使われるものです。 PHP 7.0.7 以降かつ cURL 7.36.0 以降で利用可能ですが、cURL 7.86.0 以降は非推奨となりました。
`CURLOPT_SSL_FALSESTART` (int) | `true` を指定すると TLS の False Start が有効になり、`false` を指定すると無効になります。 False Start モードは、TLS クライアントがサーバーの `Finished` メッセージを検証する前に アプリケーションデータの送信を開始するモードです。 PHP 7.0.7 以降かつ cURL 7.42.0 以降で利用可能です。
`CURLOPT_SSL_OPTIONS` (int) | SSL の動作オプションを `CURLSSLOPT_*` 定数のビットマスクで指定します。 デフォルトではどのビットも設定されていません。 PHP 7.0.7. 以降かつ cURL 7.25.0 以降で利用可能です。
`CURLOPT_SSL_SESSIONID_CACHE` (int) | `0` を指定すると SSL のセッション ID キャッシュが無効になり、 `1` を指定すると有効になります。 デフォルトでは、キャッシュを有効にした状態ですべての転送が実行されます。 cURL 7.16.0 以降で利用可能です。
`CURLOPT_SSL_VERIFYHOST` (int) | `2` を指定すると、SSL のピア証明書の Common Name フィールドまたは Subject Alternate Name フィールドが 与えられたホスト名と一致するかどうかを検証します。 `0` を指定すると、名前をチェックしません。 `1` は使用すべきではありません。 本番環境では、このオプションの値は `2` (デフォルト値) のままにしておくべきです。 値 `1` のサポートは cURL 7.28.1 で削除されました。 cURL 7.8.1 以降で利用可能です。
`CURLOPT_SSL_VERIFYPEER` (int) | `false` を指定すると cURL が ピア証明書を検証しなくなります。 検証に使用する代替証明書は `CURLOPT_CAINFO` オプションで指定するか、 証明書ディレクトリを `CURLOPT_CAPATH` オプションで指定できます。 cURL 7.10 以降のデフォルト値は `true` です。 cURL 7.10 以降は、デフォルトの CA 証明書バンドルがインストールされています。 cURL 7.4.2 以降で利用可能です。
`CURLOPT_SSL_VERIFYSTATUS` (int) | `true` を指定すると、証明書のステータスの検証が有効になります。`false` を指定すると無効になります。 PHP 7.0.7 以降かつ cURL 7.41.0 以降で利用可能です。
`CURLOPT_STDERR` (int) | `STDERR` の代わりにエラーを出力する代替場所を 指すファイルハンドルを resource で指定します。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_STREAM_WEIGHT` (int) | ストリームの重み (`1` から `256` の間の数値) を数値で設定します。 PHP 7.0.7 以降かつ cURL 7.46.0 以降で利用可能です。
`CURLOPT_SUPPRESS_CONNECT_HEADERS` (int) | `true` を指定すると、`CURLOPT_HTTPPROXYTUNNEL` が使われて CONNECT リクエストが生成された場合に、 ユーザーコールバック関数 `CURLOPT_HEADERFUNCTION` および `CURLOPT_WRITEFUNCTION` へ プロキシ CONNECT レスポンスヘッダを渡さなくなります。 デフォルト値は `false` です。 PHP 7.3.0 以降かつ cURL 7.54.0 以降で利用可能です。
`CURLOPT_TCP_FASTOPEN` (int) | `true` を指定すると TCP Fast Open を有効にし、`false` を指定すると無効にします。 PHP 7.0.7 以降かつ cURL 7.49.0 以降で利用可能です。
`CURLOPT_TCP_KEEPALIVE` (int) | `1` を指定すると TCP のキープアライブプローブが送信されます。 送られるプローブの遅延と頻度は、オペレーティングシステムがサポートしていれば `CURLOPT_TCP_KEEPIDLE` オプションと `CURLOPT_TCP_KEEPINTVL` オプションで制御できます。 `0` (デフォルト) を指定すると キープアライブプローブが無効になります。 プローブの最大数は `CURLOPT_TCP_KEEPCNT` オプションで設定できます。 cURL 7.25.0 以降で利用可能です。
`CURLOPT_TCP_KEEPIDLE` (int) | 接続がアイドル状態のとき、オペレーティングシステムがキープアライブプローブを送信する前に待機する遅延を秒単位で設定します。 `CURLOPT_TCP_KEEPALIVE` が有効でなければ効果はありません。 なお、すべてのオペレーティングシステムがこのオプションをサポートしているわけではありません。 デフォルトは `60` です。 cURL 7.25.0 以降で利用可能です。
`CURLOPT_TCP_KEEPINTVL` (int) | オペレーティングシステムがキープアライブプローブを送信する間隔を秒単位で設定します。 `CURLOPT_TCP_KEEPALIVE` が有効でなければ効果はありません。 なお、すべてのオペレーティングシステムがこのオプションをサポートしているわけではありません。 デフォルトは `60` です。 cURL 7.25.0 以降で利用可能です。
`CURLOPT_TCP_KEEPCNT` (int) | TCP におけるキープアライブプローブの最大送信数を指定します。 デフォルトは `9` です。 PHP 8.4.0 以降かつ cURL 8.9.0 以降で利用可能です。
`CURLOPT_TCP_NODELAY` (int) | `true` を指定すると、TCP の Nagle アルゴリズム (ネットワーク上の小さなパケットの数を最小化しようとするアルゴリズム) を無効にします。 デフォルト値は `true` です。 cURL 7.11.2 以降で利用可能です。
`CURLOPT_TELNETOPTIONS` (int) | telnet ネゴシエーションに渡す string の array を指定します。 変数は `<option=value>` 形式である必要があります。 cURLは、`TTYPE`、 `XDISPLOC`、`NEW_ENV` をサポートしています。 cURL 7.7.0 以降で利用可能です。
`CURLOPT_TFTP_BLKSIZE` (int) | TFTP データ転送に使用するブロックサイズを指定します。 有効な値の範囲は `8` から `65464` バイトです。 このオプションが指定されていない場合、デフォルトの `512` バイトが使用されます。 指定されたブロックサイズは、リモートサーバーがサポートしている場合に限り使用されます。 サーバーがオプション確認を返さない場合や、 ブロックサイズなしでオプション確認を返してきた場合、 デフォルトの `512` バイトが使われます。 cURL 7.19.4 以降で利用可能です。
`CURLOPT_TFTP_NO_OPTIONS` (int) | `true` を指定すると、TFTP でオプションリクエストを送信しないようになります。 デフォルト値は `false` です。 PHP 7.0.7 以降かつ cURL 7.48.0 以降で利用可能です。
`CURLOPT_TIMECONDITION` (int) | `CURLOPT_TIMEVALUE` の扱い方を設定します。 `CURL_TIMECOND_IFMODSINCE` を指定すると、 `CURLOPT_TIMEVALUE` で指定された時刻以降にページが変更された場合に限り そのページを返します。ページが変更されていない場合、 `304 Not Modified` ヘッダーが返されます (レスポンスのヘッダー部を確認するには `CURLOPT_HEADER` を `true` に設定しておく必要があります)。 `CURL_TIMECOND_IFUNMODSINCE` を使うとその逆の動作になります。 `CURLOPT_TIMEVALUE` を無視して常にページを返すには `CURL_TIMECOND_NONE` を使用します。 デフォルトは `CURL_TIMECOND_NONE` です。 cURL 7.46.0 以前のデフォルトは `CURL_TIMECOND_IFMODSINCE` でした。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_TIMEOUT` (int) | cURL 関数の実行を許容する最大秒数を指定します。 デフォルトは `0` で、転送中に関数がタイムアウトしないことを意味します。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_TIMEOUT_MS` (int) | cURL 関数の実行を許容する最大ミリ秒数を指定します。 cURL がシステム標準のネームリゾルバを使うようにビルドされている場合、 接続のその部分のタイムアウトは秒精度となり、 指定できる最小のタイムアウトも 1 秒になります。 デフォルトは `0` で、転送中に関数がタイムアウトしないことを意味します。 cURL 7.16.2 以降で利用可能です。
`CURLOPT_TIMEVALUE` (int) | 1970 年 1 月 1 日からの秒数で表した時刻を指定します。この時刻は `CURLOPT_TIMECONDITION` で使われます。 デフォルト値は `0` です。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_TIMEVALUE_LARGE` (int) | 1970 年 1 月 1 日からの秒数で表した時刻を指定します。この時刻は `CURLOPT_TIMECONDITION` で使われます。デフォルトは 0 です。 このオプションと `CURLOPT_TIMEVALUE` の違いは引数の型です。 'long' が 32 ビット幅しかないシステムでは、 2038 年を超える日付を設定するのにこちらのオプションを使う必要があります。 PHP 7.3.0 以降かつ cURL 7.59.0 以降で利用可能です。
`CURLOPT_TLS13_CIPHERS` (int) | TLS 1.3 接続で用いる暗号を、コロン区切りの string で指定します。 このオプションは現在、cURL が OpenSSL 1.1.1 以降を使用してビルドされた場合にのみ使用されます。 その他の SSL バックエンドを使用する場合、TLS 1.3 の暗号スイートは `CURLOPT_SSL_CIPHER_LIST` オプションで設定できます。 PHP 7.3.0 以降かつ cURL 7.61.0 以降で利用可能です。
`CURLOPT_TLSAUTH_PASSWORD` (int) | `CURLOPT_TLSAUTH_TYPE` オプションで指定された TLS の認証方法で用いるパスワードを string で指定します。 `CURLOPT_TLSAUTH_USERNAME` オプションも 合わせて設定する必要があります。 この機能は TLS SRP に依存しており、TLS 1.3 では動作しません。 cURL 7.21.4 以降で利用可能です。
`CURLOPT_TLSAUTH_TYPE` (int) | TLS の認証方法を string で指定します。 サポートされているのは `SRP` (TLS Secure Remote Password 認証) です。 cURL 7.21.4 以降で利用可能です。
`CURLOPT_TLSAUTH_USERNAME` (int) | `CURLOPT_TLSAUTH_TYPE` オプションで指定された TLS の認証方法で用いるユーザー名を string で指定します。 `CURLOPT_TLSAUTH_PASSWORD` オプションも 合わせて設定する必要があります。 この機能は TLS SRP に依存しており、TLS 1.3 では動作しません。 cURL 7.21.4 以降で利用可能です。
`CURLOPT_TRANSFER_ENCODING` (int) | `1` を指定すると、送信される HTTP リクエストで圧縮形式の `Transfer Encoding` を 要求するようになります。 `0` を指定すると無効になります。 サーバーが圧縮形式の `Transfer Encoding` で応答したなら、 cURL は受信時に自動で展開します。 デフォルト値は `0` です。 cURL 7.21.6 以降で利用可能です。
`CURLOPT_TRANSFERTEXT` (int) | `true` を指定すると FTP 転送で ASCII モードを使用します。 LDAP では、HTML の代わりにプレーンテキストでデータを取得します。 Windows システムでは、`STDOUT` をバイナリモードに設定しないようになります。 デフォルト値は `false` です。 cURL 7.1.1 以降で利用可能です。
`CURLOPT_UNIX_SOCKET_PATH` (int) | 接続エンドポイントとして Unix ドメインソケットの使用を有効にし、 指定された string をそのパスとして設定します。 `null` を設定すると無効になります。 デフォルト値は `null` です。 PHP 7.0.7 以降かつ cURL 7.40.0 以降で利用可能です。
`CURLOPT_UNRESTRICTED_AUTH` (int) | `true` を指定すると、(`CURLOPT_FOLLOWLOCATION` を使って) ロケーションを追跡する際に、 ホスト名が変更されたとしてもユーザー名とパスワードを送り続けます。 デフォルト値は `false` です。 cURL 7.10.4 以降で利用可能です。
`CURLOPT_UPKEEP_INTERVAL_MS` (int) | 一部のプロトコルには「接続保持」メカニズムがあります。これらのメカニズムは通常、 接続を保持するために既存の接続へ何らかのトラフィックを送信します。このオプションは接続保持間隔を設定します。 現在、接続保持メカニズムを持つ唯一のプロトコルは HTTP/2 です。 接続保持間隔を超えると、既存の接続へ HTTP/2 PING フレームが送信されます。 デフォルトは `CURL_UPKEEP_INTERVAL_DEFAULT` で、 現在は `60` 秒です。 PHP 8.2.0 以降かつ cURL 7.62.0 以降で利用可能です。
`CURLOPT_UPLOAD` (int) | `true` を指定するとアップロードの準備と実行を行います。 デフォルト値は `false` です。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_UPLOAD_BUFFERSIZE` (int) | cURL のアップロードバッファのサイズをバイト単位で指定します。 バッファサイズのデフォルトは 64 キロバイトです。設定可能な最大バッファサイズは 2 メガバイトです。 設定可能な最小バッファサイズは 16 キロバイトです。 PHP 8.2.0 以降かつ cURL 7.62.0 以降で利用可能です。
`CURLOPT_URL` (int) | 取得する URL を指定します。この設定は curl_init() で セッションを初期化する際にも指定できます。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_USE_SSL` (int) | FTP、SMTP、POP3、IMAP などを使用する際の 転送における SSL/TLS の要求レベルを設定します。 これらのプロトコルはすべて平文で開始し、 STARTTLS コマンドを使用して SSL に「アップグレード」されます。 `CURLUSESSL_*` 定数のいずれかを設定します。 cURL 7.17.0 以降で利用可能です。
`CURLOPT_USERAGENT` (int) | HTTP リクエストで使われる `User-Agent:` ヘッダーの内容を指定します。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_USERNAME` (int) | 認証に用いるユーザー名を指定します。 cURL 7.19.1 以降で利用可能です。
`CURLOPT_USERPWD` (int) | `[username]:[password]` の形で 接続に用いるユーザー名とパスワードを指定します。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_VERBOSE` (int) | `true` を指定すると、詳細な情報を出力します。 出力は `STDERR` か、 `CURLOPT_STDERR` で指定されたファイルへと書き込まれます。 デフォルト値は `false` です。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_WILDCARDMATCH` (int) | `1` を指定すると、ファイル名パターンによって複数のファイルを転送します。 パターンは `CURLOPT_URL` オプションの一部として指定でき、 URL の最後の部分 (ファイル名) で fnmatch 風のパターン (シェルパターンマッチング) を使用します。 cURL 7.21.0 以降で利用可能です。
`CURLOPT_WRITEFUNCTION` (int) | 以下のシグニチャの callable を指定します。 function callback(resource `$curlHandle`, string `$data`): int `curlHandle` cURL ハンドル。 `data` 書き込むべきデータ。 このコールバックは、データを保存して書き込んだバイト数を返さなければなりません。 そうしないなら、転送はエラーで中止されます (訳注: 一度にすべてのデータを書き込む必要があり、部分的な書き込みはできません。つまり、返り値は渡されたデータ長と一致しなければなりません)。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_WRITEHEADER` (int) | 転送のヘッダー部が書き込まれるファイルへのファイルハンドルを resource で指定します。 cURL 7.1.0 以降で利用可能です。
`CURLOPT_WS_OPTIONS` (int) | WebSocket の動作オプションを設定するビットマスクを指定します。 利用可能な唯一の選択肢は `CURLWS_RAW_MODE` です。 デフォルト値は `0` です。 PHP 8.3.0 以降かつ cURL 7.86.0 以降で利用可能です。
`CURLOPT_XFERINFOFUNCTION` (int) | 以下のシグニチャの callable を指定します。 function callback( resource `$curlHandle`, int `$bytesToDownload`, int `$bytesDownloaded`, int `$bytesToUpload`, int `$bytesUploaded` ): int `curlHandle` cURL ハンドル。 `bytesToDownload` この転送でダウンロードされようとしている総バイト数。 `bytesDownloaded` これまでにダウンロードされたバイト数。 `bytesToUpload` この転送でアップロードされようとしている総バイト数。 `bytesUploaded` これまでにアップロードされたバイト数。 転送を中断し、`CURLE_ABORTED_BY_CALLBACK` エラーをセットするには、 `1` を返してください。 PHP 8.2.0 以降かつ cURL 7.32.0 以降で利用可能です。
`CURLOPT_SERVER_RESPONSE_TIMEOUT` (int) | サーバーからのレスポンスを cURL が待機するタイムアウト秒数を指定します。この設定が使われるのは、 FTP サーバー、SFTP サーバー、IMAP サーバー、 SCP サーバー、SMTP サーバー、POP3 サーバーです。 このオプションは、cURL 7.85.0 で非推奨となった `CURLOPT_FTP_RESPONSE_TIMEOUT` を置き換えます。 PHP 8.4.0 以降で利用可能です。
`CURLOPT_XOAUTH2_BEARER` (int) | OAuth 2.0 のアクセストークンを指定します。 `null` を指定すると無効化されます。 デフォルト値は `null` です。 PHP 7.0.7 以降かつ cURL 7.33.0 以降で利用可能です。
`CURLOPT_PREREQFUNCTION` (int) | 以下のシグニチャを持つ callable を指定します。 このコールバックは、接続が確立され、リクエストペイロード (例えば、HTTP 接続における GET/POST/DELETE リクエスト) が送られる前に呼ばれます。 送信元/送信先 IP アドレスやポート番号に応じて接続を中止したり許可したりするのに 用いることができます。 function callback( CurlHandle `$curlHandle`, string `$destination_ip`, string `$local_ip`, int `$destination_port`, int `$local_port` ): int `curlHandle` cURL ハンドル。 `destination_ip` この接続で確立されたリモートサーバーのプライマリー IP アドレス。 FTP の場合は、制御用接続の IP アドレスになります。 IPv6 のアドレスは、角括弧で囲わずに表現されます。 `local_ip` この接続の送信元 IP アドレス。 IPv6 のアドレスは、角括弧で囲わずに表現されます。 `destination_port` この接続で確立されたリモートサーバーのプライマリーポート番号。 FTP の場合は、制御用接続のポート番号になります。 プロトコルに応じて、TCP または UDP のポート番号になります。 `local_port` この接続の送信元ポート番号。 プロトコルに応じて、TCP または UDP のポート番号になります。 リクエストを許可する場合は `CURL_PREREQFUNC_OK` を、 転送を中止する場合は `CURL_PREREQFUNC_ABORT` を返してください。 PHP 8.4.0 以降かつ cURL 7.80.0 以降で利用可能です。
  `CURLOPT_DEBUGFUNCTION` (int) | PHP 8.4.0 以降で利用可能です。 このオプションを利用するには `CURLOPT_VERBOSE` オプションを有効にする必要があります。 cURL 標準の詳細出力を置き換える callable を指定します。 このコールバックは、リクエストのさまざまな段階で詳細なデバッグ情報とともに呼び出されます。 これは以下のシグニチャである必要があります。 function callback(CurlHandle `$curlHandle`, int `$type`, string `$data`): void `curlHandle` cURL ハンドル。 `type` `data` の値の種類を表す以下の定数のいずれか：
  定数 | 説明
  --- | ---
  `CURLINFO_TEXT` (int) | なんらかの情報を表すテキスト。
  `CURLINFO_HEADER_IN` (int) | 相手から受信したヘッダー (あるいはヘッダーのような) データ。
  `CURLINFO_HEADER_OUT` (int) | 相手に送信したヘッダー (あるいはヘッダーのような) データ。
  `CURLINFO_DATA_IN` (int) | 相手から受信した未処理のプロトコルデータ。 データがエンコードされていたり圧縮されていたりしたとしても、デコードされたデータや展開されたデータがコールバックへ渡されることはありません。
  `CURLINFO_DATA_OUT` (int) | 相手に送信したプロトコルデータ。
  `CURLINFO_SSL_DATA_IN` (int) | 相手から受信した SSL/TLS の (バイナリ) データ。
  `CURLINFO_SSL_DATA_OUT` (int) | 相手に送信した SSL/TLS の (バイナリ) データ。
`data` `type` パラメーターで示された種類の詳細なデバッグデータ。

定数 | 説明
--- | ---
curl_share_setopt()
`CURL_LOCK_DATA_CONNECT` (int) | 接続キャッシュを共有/非共有にします。 PHP 7.3.0 および cURL 7.10.3 以降で使用可能です。
`CURL_LOCK_DATA_COOKIE` (int) | Cookie データを共有/非共有にします。 cURL 7.10.3 以降で使用可能です。
`CURL_LOCK_DATA_DNS` (int) | DNS キャッシュを共有/非共有にします。 cURL 7.10.3 以降で使用可能です。 このオプションを cURL マルチハンドルで使う場合、 同一のマルチハンドルに追加される全てのハンドルは、 デフォルトで DNS キャッシュを共有する点に注意しましょう。
`CURL_LOCK_DATA_PSL` (int) | Public Suffix List を共有/非共有にします。 PHP 7.3.0 および cURL 7.61.0 以降で使用可能です。
`CURL_LOCK_DATA_SSL_SESSION` (int) | SSL セッションID を 共有/非共有化にし、 同じサーバーに再接続する際の SSL ハンドシェイクにかかる時間を短縮します。 SSL セッションID は、同一ハンドル内ではデフォルトで再利用されます。 cURL 7.10.3 以降で使用可能です。
`CURLSHOPT_NONE` (int) | cURL 7.10.3 以降で使用可能です。
`CURLSHOPT_SHARE` (int) | 共有すべきデータのタイプを指定します。 cURL 7.10.3 以降で使用可能です。
`CURLSHOPT_UNSHARE` (int) | 共有しないデータのタイプを指定します。 cURL 7.10.3 以降で使用可能です。

定数 | 説明
--- | ---
curl_getinfo()
`CURLINFO_APPCONNECT_TIME` (int) | 処理開始から、リモートホストとの SSL/SSH 接続/ハンドシェイクが完了するまでの、かかった時間の合計(秒単位)。
`CURLINFO_APPCONNECT_TIME_T` (int) | 処理開始から、リモートホストとの SSL/SSH 接続/ハンドシェイクが完了するまでの、かかった時間の合計(マイクロ秒単位)。 PHP 7.3.0 以降 および cURL 7.61.0 以降で利用可能です。
`CURLINFO_CAINFO` (int) | デフォルトで組み込まれた CA 証明書のパス。 PHP 8.3.0 以降 および cURL 7.84.0 以降で利用可能です。
`CURLINFO_CAPATH` (int) | デフォルトで組み込まれた CA のパスの文字列。 PHP 8.3.0 以降 および cURL 7.84.0 以降で利用可能です。
`CURLINFO_CERTINFO` (int) | TLS 証明書チェイン
`CURLINFO_CONDITION_UNMET` (int) | 時間に関する条件が満たされなかった場合の情報
`CURLINFO_CONN_ID` (int) | 転送で直近に使用した接続の ID。接続 ID は、同じ接続キャッシュを使用する全接続の中で一意であり、接続の再利用を見分けるのに役立ちます。 PHP 8.5.0 以降 および cURL 8.2.0 以降で利用可能です。
`CURLINFO_CONNECT_TIME` (int) | 接続を確立するまでにかかった時間(秒単位)
`CURLINFO_CONNECT_TIME_T` (int) | 処理開始から、リモートホスト(またはプロキシ)への接続が完了するまでの、かかった時間の合計(マイクロ秒単位)。 PHP 7.3.0 以降 および cURL 7.61.0 以降で利用可能です。
`CURLINFO_CONTENT_LENGTH_DOWNLOAD` (int) | ダウンロードしたコンテンツのサイズ。 Content-Length: サイズから読み取ります。
`CURLINFO_CONTENT_LENGTH_DOWNLOAD_T` (int) | ダウンロードしたコンテンツのサイズ。 Content-Length: サイズから読み取った値ですが、 サイズが不明な場合は -1 になります。 PHP 7.3.0 以降 および cURL 7.55.0 以降で利用可能です。
`CURLINFO_CONTENT_LENGTH_UPLOAD` (int) | 指定されたアップロードサイズ
`CURLINFO_CONTENT_LENGTH_UPLOAD_T` (int) | 指定されたアップロードサイズ。 不明な場合は -1 になります。 PHP 7.3.0 以降 および cURL 7.55.0 以降で利用可能です。
`CURLINFO_CONTENT_TYPE` (int) | リクエストされた文書の `Content-Type`。 NULL の場合は、サーバーが正しい `Content-Type` を送信しなかったことを示します。
`CURLINFO_COOKIELIST` (int) | 全ての既知の Cookie
`CURLINFO_EFFECTIVE_METHOD` (int) | 直近で使用した HTTP メソッド
`CURLINFO_EFFECTIVE_URL` (int) | 直近の有効な URL
`CURLINFO_FILETIME` (int) | `CURLOPT_FILETIME` が有効な場合は、取得したドキュメントのリモート時刻。 -1 が返された場合、ドキュメントの時刻は不明です。
`CURLINFO_FILETIME_T` (int) | 取得したドキュメントのリモート時刻を(Unixタイムスタンプとして)取得します。 32ビット長の変数を使うシステムが、32ビットタイムスタンプの範囲外の日付を抽出できるようにする目的で、 `CURLINFO_FILETIME` の代替として使います。 PHP 7.3.0 以降 および cURL 7.59.0 以降で利用可能です。
`CURLINFO_FTP_ENTRY_PATH` (int) | FTP サーバーのエントリーパス
`CURLINFO_HEADER_OUT` (int) | 送信されたリクエスト文字列。 これを機能させるには、curl_setopt() をコールし、 `CURLINFO_HEADER_OUT` オプションをハンドルに追加する必要があります。
`CURLINFO_HEADER_SIZE` (int) | 受信した全てのヘッダの合計サイズ
`CURLINFO_HTTPAUTH_AVAIL` (int) | 前回の応答に基づいて、利用可能な認証方法を示すビットマスク
`CURLINFO_HTTPAUTH_USED` (int) | 前回のリクエストで実際に使用した HTTP 認証方法を示すビットマスク。 PHP 8.5.0 以降 および cURL 8.12.0 以降で利用可能です。
`CURLINFO_HTTP_CODE` (int) | 直近のレスポンスコード。 cURL 7.10.8 以降は、この値は `CURLINFO_RESPONSE_CODE` のレガシーエイリアスです。
`CURLINFO_HTTP_CONNECTCODE` (int) | CONNECT に対するレスポンスコード
`CURLINFO_HTTP_VERSION` (int) | 直近の HTTP 接続で使用されたバージョン。 戻り値は定義済みの `CURL_HTTP_VERSION_*` 定数のいずれかです。バージョンが判別できない場合は 0 になります。 PHP 7.3.0 以降 および cURL 7.50.0 以降で利用可能です。
`CURLINFO_LASTONE` (int) | `libcurl` の `CURLINFO` enum の最後の値
`CURLINFO_LOCAL_IP` (int) | 直近の接続のローカルの(ソース)IPアドレス
`CURLINFO_LOCAL_PORT` (int) | 直近の接続のローカルの(ソース)ポート
`CURLINFO_NAMELOOKUP_TIME` (int) | 名前解決が完了するまでにかかった時間
`CURLINFO_NAMELOOKUP_TIME_T` (int) | 処理開始から、名前解決が開始されるまでの経過時間(秒単位)。 PHP 7.3.0 以降 および cURL 7.61.0 以降で利用可能です。
`CURLINFO_NUM_CONNECTS` (int) | 直前の転送を完了するために、curl が作成しなければならなかった接続数
`CURLINFO_OS_ERRNO` (int) | 接続が失敗した際の Errno。 実際の値は OS とシステム依存です。
`CURLINFO_PRETRANSFER_TIME` (int) | 処理開始から、ファイル転送が開始されるまでの経過時間(秒単位)。
`CURLINFO_PRETRANSFER_TIME_T` (int) | ファイル転送が開始される直前までの経過時間(マイクロ秒単位)。 PHP 7.3.0 以降 および cURL 7.61.0 以降で利用可能です。
`CURLINFO_PRIMARY_IP` (int) | もっとも直近の接続の IP アドレス
`CURLINFO_PRIMARY_PORT` (int) | 直近の接続先のポート番号
`CURLINFO_PRIVATE` (int) | curl_setopt() の `CURLOPT_PRIVATE` をオプションを以前に設定した場合に、 この cURL ハンドルに関連付けられたプライベートデータ。
`CURLINFO_PROTOCOL` (int) | 直近の HTTP 接続で使用したプロトコル。 返される値は、`CURLPROTO_*` の値のうち、いずれか1つです。 PHP 7.3.0 以降 および cURL 7.52.0 以降で利用可能です。
`CURLINFO_PROXYAUTH_AVAIL` (int) | 前回の応答に基づいて、利用可能なプロキシ認証方法を示すビットマスク
`CURLINFO_PROXYAUTH_USED` (int) | 前回のリクエストで実際に使用したプロキシ認証方法を示すビットマスク。 PHP 8.5.0 以降 および cURL 8.12.0 以降で利用可能です。
`CURLINFO_PROXY_ERROR` (int) | 直近の転送で`CURLE_PROXY` エラーが返された際の、 詳細な(SOCKS)プロキシエラーコード。 返される値は `CURLPX_*` 値のいずれかひとつです。 応答コードが利用できない場合、エラーコードは `CURLPX_OK` になります。 PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLINFO_PROXY_SSL_VERIFYRESULT` (int) | （`CURLOPT_PROXY_SSL_VERIFYPEER` オプションを使用して） 要求した証明書の検証の結果。HTTPS プロキシでのみ使用されます。 PHP 7.3.0 以降 および cURL 7.52.0 以降で利用可能です。
`CURLINFO_QUEUE_TIME_T` (int) | `CURLMOPT_MAX_TOTAL_CONNECTIONS` や類似のオプションで設定された制限により、 転送が開始される前に待機キューで保留されていた時間(マイクロ秒単位)。 PHP 8.5.0 以降 および cURL 8.6.0 以降で利用可能です。
`CURLINFO_REDIRECT_COUNT` (int) | `CURLOPT_FOLLOWLOCATION` オプションが有効な場合の、 リダイレクトの回数
`CURLINFO_REDIRECT_TIME` (int) | `CURLOPT_FOLLOWLOCATION` が有効な場合に、 最終トランザクション開始前の、全リダイレクトステップにかかった合計時間（秒単位）
`CURLINFO_REDIRECT_TIME_T` (int) | 最終トランザクションが開始される前に、名前解決、接続、事前転送、 転送を含むすべてのリダイレクトステップにかかった合計時間(マイクロ秒単位)。 PHP 7.3.0 以降 および cURL 7.61.0 以降で利用可能です。
`CURLINFO_REDIRECT_URL` (int) | `CURLOPT_FOLLOWLOCATION` オプションが無効の場合: 直近のトランザクションで検出されたリダイレクト先URL。 このリダイレクト先に、次は手動でリクエストすべきです。 `CURLOPT_FOLLOWLOCATION` オプションが有効の場合: この場合のリダイレクト先URLは、`CURLINFO_EFFECTIVE_URL` で利用できます。
`CURLINFO_REFERER` (int) | `Referer` ヘッダ。 PHP 8.2.0 以降 および cURL 7.76.0 以降で利用可能です。
`CURLINFO_REQUEST_SIZE` (int) | 発行されたリクエストの合計サイズ。 現状は、HTTP リクエスト向けのみです。
`CURLINFO_RESPONSE_CODE` (int) | 最後のレスポンスコード。 cURL 7.10.8 以降で利用可能です。
`CURLINFO_RETRY_AFTER` (int) | `Retry-After` から取得した情報。 有効なヘッダがない場合は 0 になります。 PHP 8.2.0 以降 および cURL 7.66.0 以降で利用可能です。
`CURLINFO_RTSP_CLIENT_CSEQ` (int) | RTSP クライアントの次の CSeq 番号
`CURLINFO_RTSP_CSEQ_RECV` (int) | 直近に受信した CSeq 番号
`CURLINFO_RTSP_SERVER_CSEQ` (int) | RTSP サーバーとの次の CSeq 番号
`CURLINFO_RTSP_SESSION_ID` (int) | RTSP セッションID
`CURLINFO_SCHEME` (int) | もっとも直近の接続で使用した URL スキーム。 PHP 7.3.0 以降 および cURL 7.52.0 以降で利用可能です。
`CURLINFO_SIZE_DOWNLOAD` (int) | ダウンロードした合計バイト数
`CURLINFO_SIZE_DOWNLOAD_T` (int) | ダウンロードした合計バイト数。 この値は直近の転送のみの値で、新しい転送が行われるたびにリセットされます。 PHP 7.3.0 以降 および cURL 7.50.0 以降で利用可能です。
`CURLINFO_SIZE_UPLOAD` (int) | アップロードした合計バイト数
`CURLINFO_SIZE_UPLOAD_T` (int) | アップロードした合計バイト数 PHP 7.3.0 以降 および cURL 7.50.0 以降で利用可能です。
`CURLINFO_SPEED_DOWNLOAD` (int) | ダウンロード速度の平均
`CURLINFO_SPEED_DOWNLOAD_T` (int) | ダウンロードを完了するまでに curl が計測した、平均ダウンロード速度(バイト/秒)。 PHP 7.3.0 以降 および cURL 7.50.0 以降で利用可能です。
`CURLINFO_SPEED_UPLOAD` (int) | アップロード速度の平均
`CURLINFO_SPEED_UPLOAD_T` (int) | アップロードを完了するまでに curl が計測した、平均アップロード速度(バイト/秒)。 PHP 7.3.0 以降 および cURL 7.50.0 以降で利用可能です。
`CURLINFO_SSL_ENGINES` (int) | サポートされている OpenSSL の暗号化エンジン
`CURLINFO_SSL_VERIFYRESULT` (int) | `CURLOPT_SSL_VERIFYPEER` で要求した、SSL 証明書の検証結果
`CURLINFO_STARTTRANSFER_TIME` (int) | 最初のバイトが送信される直前までにかかった、秒単位の時間。
`CURLINFO_STARTTRANSFER_TIME_T` (int) | 通信の開始から最初のバイトを受信するまでにかかった、マイクロ秒単位の時間。 PHP 7.3.0 以降 および cURL 7.61.0 以降で利用可能です。
`CURLINFO_TOTAL_TIME` (int) | 直近の転送における、トランザクションの合計時間(秒単位)
`CURLINFO_TOTAL_TIME_T` (int) | 以前の転送でかかった、マイクロ秒単位の時間。 転送には、名前解決や TCP 接続などが含まれます。 PHP 7.3.0 以降 および cURL 7.61.0 以降で利用可能です。
`CURLINFO_USED_PROXY` (int) | 前回の転送でプロキシを使用したかどうか。プロキシを使用した場合は `1` を、 使用しなかった場合は `0` を返します。 PHP 8.5.0 以降 および cURL 8.7.0 以降で利用可能です。
`CURLINFO_POSTTRANSFER_TIME_T` (int) | 送信の開始から最後のバイトが送信されるまでにかかった、マイクロ秒単位の時間。 PHP 8.4.0 以降 および cURL 8.10.0 以降で利用可能です。

定数 | 説明
--- | ---
curl_multi_setopt()
`CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE` (int) | パイプライン処理における、チャンクの長さのしきい値をバイト単位で指定します。 PHP 7.0.7 以降 および cURL 7.30.0 以降で利用可能です。
`CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE` (int) | パイプライン処理における、ペナルティのしきい値をバイト単位で指定します。 PHP 7.0.7 以降 および cURL 7.30.0 以降で利用可能です。
`CURLMOPT_MAXCONNECTS` (int) | 同時に開く接続の最大数を指定します。 これを libcurl がキャッシュします。 デフォルトのサイズは、curl_multi_add_handle() で追加したハンドル数の四倍に収まるように拡大されます。 キャッシュがいっぱいになると、curl はキャッシュ内で一番古い接続を閉じ、 開いている接続の数が増えないようにします。 cURL 7.16.3 以降で利用可能です。
`CURLMOPT_MAX_CONCURRENT_STREAMS` (int) | cURL が HTTP/2 接続でサポートすべき同時ストリームの最大数を指定します。 有効な値の範囲は `1` から `2147483647`（`2^31 - 1`）です。 ここで指定された値は、 他のシステムリソースのプロパティに基づいて適用されます。 デフォルトは `100` です。 PHP 8.2.0 以降 および cURL 7.67.0. 以降で利用可能です。
`CURLMOPT_MAX_HOST_CONNECTIONS` (int) | 単一ホストへの最大接続数を指定します。 PHP 7.0.7 以降 および cURL 7.30.0 以降で利用可能です。
`CURLMOPT_MAX_PIPELINE_LENGTH` (int) | パイプライン内の最大リクエスト数を指定します。 PHP 7.0.7 以降 および cURL 7.30.0 以降で利用可能です。
`CURLMOPT_MAX_TOTAL_CONNECTIONS` (int) | 同時に開くことができる、接続の最大数を指定します。 PHP 7.0.7 以降 および cURL 7.30.0 以降で利用可能です。
`CURLMOPT_PIPELINING` (int) | 1 を指定するとパイプラインが有効になり、 0 を指定すると無効になります。 マルチハンドルでパイプラインを有効にすると、 このハンドルを使用した転送では可能な限り HTTP パイプラインを実行しようとします。 これは、既存の接続を利用可能な2つ目のリクエストを追加すると、 そのリクエストが同じ接続上で "パイプ" されることを意味します。 cURL 7.43.0 以降、この値はビットマスクとなり、 2 を渡すと既存の HTTP/2 接続上で新規転送の多重化を試行します。 3 を渡すと、パイプライン化と多重化を 互いに独立して要求するよう cURL に指示します。 cURL 7.62.0 以降は、パイプラインビットを設定しても効果がありません。 整数リテラルではなく、CURLPIPE_* 定数も使用できます。 cURL 7.16.0 以降で利用可能です。
`CURLMOPT_PUSHFUNCTION` (int) | サーバープッシュを処理するために登録する callable を渡します。 これは、以下のシグネチャを持ちます: function pushfunction(resource `$parent_ch`, resource `$pushed_ch`, array `$headers`): int `parent_ch` 親の cURL ハンドル(クライアントが作成したリクエスト) `pushed_ch` プッシュされたリクエスト向けの、新しい cURL ハンドル `headers` push promise のヘッダ プッシュ関数は、プッシュが処理できる場合は、`CURL_PUSH_OK` を返し、拒否する場合は `CURL_PUSH_DENY` を返すことが期待されています。 PHP 7.1.0 以降 および cURL 7.44.0 以降で利用可能です。

定数 | 説明
--- | ---
cURL protocol 定数
`CURLPROTO_ALL` (int) | cURL 7.19.4 以降で利用可能です。
`CURLPROTO_DICT` (int) | cURL 7.19.4 以降で利用可能です。
`CURLPROTO_FILE` (int) | cURL 7.19.4 以降で利用可能です。
`CURLPROTO_FTP` (int) | cURL 7.19.4 以降で利用可能です。
`CURLPROTO_FTPS` (int) | cURL 7.19.4 以降で利用可能です。
`CURLPROTO_GOPHER` (int) | cURL 7.21.2 以降で利用可能です。
`CURLPROTO_HTTP` (int) | cURL 7.19.4 以降で利用可能です。
`CURLPROTO_HTTPS` (int) | cURL 7.19.4 以降で利用可能です。
`CURLPROTO_IMAP` (int) | cURL 7.20.0 以降で利用可能です。
`CURLPROTO_IMAPS` (int) | cURL 7.20.0 以降で利用可能です。
`CURLPROTO_LDAP` (int) | cURL 7.19.4 以降で利用可能です。
`CURLPROTO_LDAPS` (int) | cURL 7.19.4 以降で利用可能です。
`CURLPROTO_MQTT` (int) | PHP 8.2.0 以降 および cURL 7.71.0 以降で利用可能です。
`CURLPROTO_POP3` (int) | cURL 7.20.0 以降で利用可能です。
`CURLPROTO_POP3S` (int) | cURL 7.20.0 以降で利用可能です。
`CURLPROTO_RTMP` (int) | cURL 7.21.0 以降で利用可能です。
`CURLPROTO_RTMPE` (int) | cURL 7.21.0 以降で利用可能です。
`CURLPROTO_RTMPS` (int) | cURL 7.21.0 以降で利用可能です。
`CURLPROTO_RTMPT` (int) | cURL 7.21.0 以降で利用可能です。
`CURLPROTO_RTMPTE` (int) | cURL 7.21.0 以降で利用可能です。
`CURLPROTO_RTMPTS` (int) | cURL 7.21.0 以降で利用可能です。
`CURLPROTO_RTSP` (int) | cURL 7.20.0 以降で利用可能です。
`CURLPROTO_SCP` (int) | cURL 7.19.4 以降で利用可能です。
`CURLPROTO_SFTP` (int) | cURL 7.19.4 以降で利用可能です。
`CURLPROTO_SMB` (int) | PHP 7.0.7 以降 および cURL 7.40.0 以降で利用可能です。
`CURLPROTO_SMBS` (int) | PHP 7.0.7 以降 および cURL 7.40.0 以降で利用可能です。
`CURLPROTO_SMTP` (int) | cURL 7.20.0 以降で利用可能です。
`CURLPROTO_SMTPS` (int) | cURL 7.20.0 以降で利用可能です。
`CURLPROTO_TELNET` (int) | cURL 7.19.4 以降で利用可能です。
`CURLPROTO_TFTP` (int) | cURL 7.19.4 以降で利用可能です。

定数 | 説明
--- | ---
cURL エラー定数
`CURLE_ABORTED_BY_CALLBACK` (int) | コールバックによって abort されました。 コールバックが libcurl に "abort" を返しました。
`CURLE_BAD_CALLING_ORDER` (int) |
`CURLE_BAD_CONTENT_ENCODING` (int) | 認識できない転送エンコーディングです。
`CURLE_BAD_DOWNLOAD_RESUME` (int) | 指定されたオフセットがファイルの境界の範囲外のため、 ダウンロードを再開できませんでした。
`CURLE_BAD_FUNCTION_ARGUMENT` (int) | 関数が不正な引数を使ってコールされました。
`CURLE_BAD_PASSWORD_ENTERED` (int) |
`CURLE_COULDNT_CONNECT` (int) | ホストまたはプロキシに接続できませんでした。
`CURLE_COULDNT_RESOLVE_HOST` (int) | ホストを解決できませんでした。 指定されたリモートホストが解決できませんでした。
`CURLE_COULDNT_RESOLVE_PROXY` (int) | プロキシを解決できませんでした。 指定されたプロキシホストが解決できませんでした。
`CURLE_FAILED_INIT` (int) | 初期化のはじめの段階で失敗しました。 内部エラーか、 何かしらの基本的な処理が初期化時に行えなかったリソース問題の可能性があります。
`CURLE_FILESIZE_EXCEEDED` (int) | ファイルの最大サイズを超えました。
`CURLE_FILE_COULDNT_READ_FILE` (int) | FILE:// で指定されたファイルが開けませんでした。 これはほとんどの場合、ファイルパスが既存のファイルを指していないか、 適切なファイルパーミッションが欠けていることによって発生します。
`CURLE_FTP_ACCESS_DENIED` (int) |
`CURLE_FTP_BAD_DOWNLOAD_RESUME` (int) |
`CURLE_FTP_CANT_GET_HOST` (int) | 新規接続に指定されたホストのルックアップに、 内部的に失敗しました。
`CURLE_FTP_CANT_RECONNECT` (int) |
`CURLE_FTP_COULDNT_GET_SIZE` (int) |
`CURLE_FTP_COULDNT_RETR_FILE` (int) | 'RETR' コマンドへの応答が想定外であったか、 転送が完了したサイズが0バイトでした。
`CURLE_FTP_COULDNT_SET_ASCII` (int) |
`CURLE_FTP_COULDNT_SET_BINARY` (int) |
`CURLE_FTP_COULDNT_STOR_FILE` (int) |
`CURLE_FTP_COULDNT_USE_REST` (int) | FTP REST コマンドがエラーを返しました。 サーバーが正常であれば、このエラーは決して発生しないはずです。
`CURLE_FTP_PARTIAL_FILE` (int) |
`CURLE_FTP_PORT_FAILED` (int) | FTP PORT コマンドがエラーを返しました。 ほとんどの場合、 これは libcurl が使う十分なアドレスが指定されていない場合に起こります。 `CURLOPT_FTPPORT` を参照ください。
`CURLE_FTP_QUOTE_ERROR` (int) |
`CURLE_FTP_SSL_FAILED` (int) |
`CURLE_FTP_USER_PASSWORD_INCORRECT` (int) |
`CURLE_FTP_WEIRD_227_FORMAT` (int) | FTP サーバーは、PASV コマンドの応答として、227 応答を返します。 libcurl がこの応答行をパースできない場合、 このエラーコードが返されます。
`CURLE_FTP_WEIRD_PASS_REPLY` (int) | FTP パスワードをサーバーに送信後、 libcurl は適切な応答を期待します。 このエラーコードは、予期しないエラーコードが応答されたことを示します。
`CURLE_FTP_WEIRD_PASV_REPLY` (int) | libcurl は、PASV や EPSV コマンドのレスポンスとして、 サーバーから妥当な結果を取得できませんでした。 サーバーにバグがあります。
`CURLE_FTP_WEIRD_SERVER_REPLY` (int) | サーバーが送信したデータを、libcurl がパースできませんでした。 このエラーコードは、cURL 7.51.0 以降は `CURLE_WEIRD_SERVER_REPLY` になりました。
`CURLE_FTP_WEIRD_USER_REPLY` (int) |
`CURLE_FTP_WRITE_ERROR` (int) |
`CURLE_FUNCTION_NOT_FOUND` (int) | 関数が見つかりません。 要求されている zlib 関数が見つかりませんでした。
`CURLE_GOT_NOTHING` (int) | サーバーから何も返されませんでした。 条件によっては、何も受信しないことがエラーとみなされます。
`CURLE_HTTP_NOT_FOUND` (int) |
`CURLE_HTTP_PORT_FAILED` (int) |
`CURLE_HTTP_POST_ERROR` (int) | これは主に内部的な処理の混乱によって発生する、奇妙なエラーです。
`CURLE_HTTP_RANGE_ERROR` (int) |
`CURLE_HTTP_RETURNED_ERROR` (int) | `CURLOPT_FAILONERROR` を `true` に設定し、 かつ HTTP サーバーが 400 以上のエラーコードをまえした場合に、 この値が返されます。
`CURLE_LDAP_CANNOT_BIND` (int) | LDAP がバインドできません。 LDAP のバインド操作が失敗しました。
`CURLE_LDAP_INVALID_URL` (int) |
`CURLE_LDAP_SEARCH_FAILED` (int) | LDAP 検索が失敗しました。
`CURLE_LIBRARY_NOT_FOUND` (int) |
`CURLE_MALFORMAT_USER` (int) |
`CURLE_OBSOLETE` (int) |
`CURLE_OK` (int) | 全て順調です。通常通り処理します。
`CURLE_OPERATION_TIMEDOUT` (int) | 条件に基づく、指定されたタイムアウト時間に到達しました。
`CURLE_OPERATION_TIMEOUTED` (int) |
`CURLE_OUT_OF_MEMORY` (int) | メモリ割当てリクエストに失敗しました。
`CURLE_PARTIAL_FILE` (int) | ファイル転送サイズが、期待より大きいか小さいです。 これは、サーバーが最初に期待される転送サイズを報告した後、 そこで指定したサイズと一致しないデータを送信した場合に発生します。
`CURLE_PROXY` (int) | Proxy ハンドシェイクエラー。 `CURLINFO_PROXY_ERROR` を指定すると、特定の問題に関する詳細が得られます。 PHP 8.2.0 以降 および cURL 7.73.0 以降で利用可能です。
`CURLE_READ_ERROR` (int) | ローカルファイルを読み取る際に問題が発生したか、 読み取りコールバックからエラーが返されました。
`CURLE_RECV_ERROR` (int) | ネットワークデータを受信する処理に失敗しました。
`CURLE_SEND_ERROR` (int) | ネットワークデータを送信する処理に失敗しました。
`CURLE_SHARE_IN_USE` (int) |
`CURLE_SSH` (int) | SSH セッションの間に、不明なエラーが発生しました。 cURL 7.16.1 以降で利用可能です。
`CURLE_SSL_CACERT` (int) |
`CURLE_SSL_CACERT_BADFILE` (int) | SSL CA cert を読み取る際に問題が発生しました。
`CURLE_SSL_CERTPROBLEM` (int) | ローカルのクライアント証明書 を読み取る際に問題が発生しました。
`CURLE_SSL_CIPHER` (int) | 特定の暗号を使えませんでした。
`CURLE_SSL_CONNECT_ERROR` (int) | SSL/TLS ハンドシェイクのどこかで問題が発生しました。 エラーバッファ内のメッセージを読み取ると、問題の詳細が確認できます。 原因としては、証明書(ファイル形式、パス、権限)や、パスワードなどが考えられます。
`CURLE_SSL_ENGINE_NOTFOUND` (int) | 指定された暗号化エンジンが見つかりませんでした。
`CURLE_SSL_ENGINE_SETFAILED` (int) | 選択した SSL 暗号化エンジンを、デフォルト設定にできませんでした。
`CURLE_SSL_PEER_CERTIFICATE` (int) |
`CURLE_SSL_PINNEDPUBKEYNOTMATCH` (int) | `CURLOPT_PINNEDPUBLICKEY` で指定された 固定鍵と一致しませんでした。
`CURLE_TELNET_OPTION_SYNTAX` (int) |
`CURLE_TOO_MANY_REDIRECTS` (int) | リダイレクトの回数が多過ぎます。 リダイレクトを追跡しましたが、 libcurl がその最大回数に達しました。 この回数は `CURLOPT_MAXREDIRS` で設定できます。
`CURLE_UNKNOWN_TELNET_OPTION` (int) |
`CURLE_UNSUPPORTED_PROTOCOL` (int) | libcurl に渡された URL が、 サポートしていないプロトコルを指定していました。 コンパイル時にオプションが指定されなかったか、 プロトコルを指定する文字列の間違い、 または、単に libcurl が未実装の可能性があります。
`CURLE_URL_MALFORMAT` (int) | URL が適切にフォーマットされていませんでした。
`CURLE_URL_MALFORMAT_USER` (int) |
`CURLE_WEIRD_SERVER_REPLY` (int) | サーバーが送信したデータをパースできませんでした。 cURL 7.51.0 より前のバージョンでは、 このエラーコードは `CURLE_FTP_WEIRD_SERVER_REPLY` でした。 PHP 7.3.0 以降 および cURL 7.51.0 以降で利用可能です。
`CURLE_WRITE_ERROR` (int) | 受信したデータをローカルファイルに書き込む際に、エラーが発生しました。 または、libcurl の書き込みコールバックからエラーが返されました。

定数 | 説明
--- | ---
curl_multi_* 定数
`CURLM_ADDED_ALREADY` (int) | 既にマルチハンドルに追加済みの easy ハンドルを、再度追加しようとしました。 cURL 7.32.1 以降で利用可能です。
`CURLM_BAD_EASY_HANDLE` (int) | easy ハンドルが有効なものではありません。 easy ハンドルではない可能性もありますし、 既にハンドルが、このハンドルまたは別のマルチハンドルから使われているかもしれません。 cURL 7.9.6 以降で利用可能です。
`CURLM_BAD_HANDLE` (int) | 渡されたハンドルが、有効なマルチハンドルではありません。 cURL 7.9.6 以降で利用可能です。
`CURLM_CALL_MULTI_PERFORM` (int) | cURL 7.20.0 以降は、この定数は使われていません。 cURL 7.20.0 より前のバージョンでは、 curl_multi_select() や類似の関数がコールされる際に、 curl_multi_exec() が他の定数を返す前にこのコードを返す可能性がありました。 cURL 7.9.6 以降で利用可能です。
`CURLM_INTERNAL_ERROR` (int) | `libcurl` の内部エラー。 cURL 7.9.6 以降で利用可能です。
`CURLM_OK` (int) | エラーはありません。 cURL 7.9.6 以降で利用可能です。
`CURLM_OUT_OF_MEMORY` (int) | マルチハンドルを処理中にメモリが枯渇しました。 cURL 7.9.6 以降で利用可能です。

定数 | 説明
--- | ---
curl_pause()
`CURLPAUSE_ALL` (int) | データの送信と受信を中断します。 cURL 7.18.0 以降で利用可能です。
`CURLPAUSE_CONT` (int) | データの送信と受信を再開します。 cURL 7.18.0 以降で利用可能です。
`CURLPAUSE_RECV` (int) | データの受信を中断します。 cURL 7.18.0 以降で利用可能です。
`CURLPAUSE_RECV_CONT` (int) | データの受信を再開します。 cURL 7.18.0 以降で利用可能です。
`CURLPAUSE_SEND` (int) | データの送信を中断します。 cURL 7.18.0 以降で利用可能です。
`CURLPAUSE_SEND_CONT` (int) | データの送信を再開します。 cURL 7.18.0 以降で利用可能です。

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open