PHP 8.3.0 RC 6 available for testing

预定义常量

下列常量由此扩展定义,且仅在此扩展编译入 PHP 或在运行时动态载入时可用。

curl_setopt()curl_multi_setopt()curl_getinfo() 文档中常量的描述和使用。

CURLOPT_AUTOREFERER (int)
CURLOPT_COOKIESESSION (int)
CURLOPT_DOH_URL (int)
提供 DNS-over-HTTPS URL。 从 PHP 8.1.0 和 cURL 7.62.0 开始可用。
CURLOPT_DOH_SSL_VERIFYHOST (int)
根据主机名验证 DNS-over-HTTPS 服务器的 SSL 证书名称字段。自 PHP 8.2.0 和 cURL 7.76.0 版本可用。
CURLOPT_DOH_SSL_VERIFYPEER (int)
验证 DNS-over-HTTPS 服务器的 SSL 证书的真实性。自 PHP 8.2.0 和 cURL 7.76.0 版本可用。
CURLOPT_DOH_SSL_VERIFYSTATUS (int)
告诉 cURL 使用“证书状态请求”TLS 扩展(OCSP stapling)验证 DNS-over-HTTPS 服务器证书的状态。自 PHP 8.2.0 和 cURL 7.76.0 版本可用。
CURLOPT_DNS_USE_GLOBAL_CACHE (int)
CURLOPT_DNS_CACHE_TIMEOUT (int)
CURLOPT_FTP_SSL (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 起可用
CURLFTPSSL_TRY (int)
CURLFTPSSL_ALL (int)
CURLFTPSSL_CONTROL (int)
CURLFTPSSL_NONE (int)
CURLFTPMETHOD_DEFAULT (int)
自 PHP 8.2.0 和 cURL 7.15.3 起可用。
CURLOPT_PRIVATE (int)
CURLOPT_FTPSSLAUTH (int)
CURLOPT_PORT (int)
CURLOPT_FILE (int)
CURLOPT_INFILE (int)
CURLOPT_INFILESIZE (int)
CURLOPT_ISSUERCERT_BLOB (int)
来自内存 blob 的颁发者 SSL 证书。 自 PHP 8.1.0 和 cURL 7.71.0 开始可用。
CURLOPT_URL (int)
CURLOPT_PROXY (int)
CURLOPT_PROXY_ISSUERCERT (int)
代理颁发者 SSL 证书文件名。 自 PHP 8.1.0 和 cURL 7.71.0 开始可用。
CURLOPT_PROXY_ISSUERCERT_BLOB (int)
来自内存 blob 的代理颁发者 SSL 证书。 自 PHP 8.1.0 和 cURL 7.71.0 开始可用。
CURLOPT_PROXY_SSLCERT_BLOB (int)
来自内存 blob 的 SSL 代理客户端证书。 自 PHP 8.1.0 和 cURL 7.71.0 开始可用。
CURLOPT_PROXY_SSLKEY_BLOB (int)
来自内存 blob 的代理证书的私钥。 自 PHP 8.1.0 和 cURL 7.71.0 开始可用。
CURLOPT_VERBOSE (int)
CURLOPT_ALTSVC (int)
自 PHP 8.2.0 和 cURL 7.64.1 起可用。
CURLOPT_ALTSVC_CTRL (int)
自 PHP 8.2.0 和 cURL 7.64.1 起可用。
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 起可用。
CURLOPT_HEADER (int)
CURLOPT_HTTPHEADER (int)
CURLOPT_NOPROGRESS (int)
CURLOPT_NOBODY (int)
CURLOPT_FAILONERROR (int)
CURLOPT_UPLOAD (int)
CURLOPT_UPLOAD_BUFFERSIZE (int)
自 PHP 8.2.0 和 cURL 7.62.0 起可用
CURLOPT_POST (int)
CURLOPT_FTPLISTONLY (int)
CURLOPT_FTPAPPEND (int)
CURLOPT_FTP_CREATE_MISSING_DIRS (int)
CURLOPT_NETRC (int)
CURLOPT_FOLLOWLOCATION (int)
当启用 open_basedir 时,此常量不可用。
CURLOPT_FTPASCII (int)
CURLOPT_PUT (int)
CURLOPT_MUTE (int)
自 cURL 7.15.5 起删除;请改用 CURLOPT_RETURNTRANSFER
CURLOPT_USERPWD (int)
CURLOPT_PROXYUSERPWD (int)
CURLOPT_RANGE (int)
CURLOPT_TIMEOUT (int)
CURLOPT_TIMEOUT_MS (int)
CURLOPT_TCP_NODELAY (int)
CURLOPT_POSTFIELDS (int)
CURLOPT_PROGRESSFUNCTION (int)
CURLOPT_REFERER (int)
CURLOPT_USERAGENT (int)
CURLOPT_FTPPORT (int)
CURLOPT_FTP_USE_EPSV (int)
CURLOPT_LOW_SPEED_LIMIT (int)
CURLOPT_LOW_SPEED_TIME (int)
CURLOPT_RESUME_FROM (int)
CURLOPT_COOKIELIST (int)
自 cURL 7.14.1 起可用
CURLOPT_SSLCERT (int)
CURLOPT_SSLCERT_BLOB (int)
来自内存 blob 的 SSL 客户端证书。 自 PHP 8.1.0 和 cURL 7.71.0 起可用。
CURLOPT_SSLCERTPASSWD (int)
CURLOPT_SSLKEY_BLOB (int)
来自内存 blob 的客户端证书的私钥。 自 PHP 8.1.0 和 cURL 7.71.0 起可用。
CURLOPT_WRITEHEADER (int)
CURLOPT_SSL_VERIFYHOST (int)
CURLOPT_COOKIEFILE (int)
CURLOPT_SSLVERSION (int)
CURL_SSLVERSION_DEFAULT (int)
CURL_SSLVERSION_TLSv1 (int)
CURL_SSLVERSION_SSLv2 (int)
CURL_SSLVERSION_SSLv3 (int)
CURL_SSLVERSION_TLSv1_0 (int)
CURL_SSLVERSION_TLSv1_1 (int)
CURL_SSLVERSION_TLSv1_2 (int)
CURL_SSLVERSION_TLSv1_3 (int)
CURLOPT_TIMECONDITION (int)
CURLOPT_TIMEVALUE (int)
CURLOPT_CUSTOMREQUEST (int)
CURLOPT_STDERR (int)
CURLOPT_TRANSFERTEXT (int)
CURLOPT_RETURNTRANSFER (int)
CURLOPT_QUOTE (int)
CURLOPT_POSTQUOTE (int)
CURLOPT_INTERFACE (int)
CURLOPT_KRB4LEVEL (int)
CURLOPT_HTTPPROXYTUNNEL (int)
CURLOPT_FILETIME (int)
CURLOPT_WRITEFUNCTION (int)
CURLOPT_READFUNCTION (int)
CURLOPT_PASSWDFUNCTION (int)
自 PHP 7.3.0 起移除。
CURLOPT_HEADERFUNCTION (int)
CURLOPT_MAXAGE_CONN (int)
自 PHP 8.2.0 和 cURL 7.65.0 起可用
CURLOPT_MAXFILESIZE_LARGE (int)
自 PHP 8.2.0 和 cURL 7.11.0 起可用
CURLOPT_MAXLIFETIME_CONN (int)
自 PHP 8.2.0 和 cURL 7.80.0 起可用
CURLOPT_MAXREDIRS (int)
CURLOPT_MAXCONNECTS (int)
CURLOPT_FRESH_CONNECT (int)
CURLOPT_FORBID_REUSE (int)
CURLOPT_RANDOM_FILE (int)
CURLOPT_EGDSOCKET (int)
CURLOPT_CONNECTTIMEOUT (int)
CURLOPT_CONNECTTIMEOUT_MS (int)
CURLOPT_SSL_VERIFYPEER (int)
CURLOPT_CAINFO (int)
CURLOPT_CAINFO_BLOB (int)
自 PHP 8.2.0 和 cURL 7.77.0 起可用
CURLOPT_CAPATH (int)
CURLOPT_COOKIEJAR (int)
CURLOPT_SSL_CIPHER_LIST (int)
CURLOPT_SSL_EC_CURVES (int)
自 PHP 8.2.0 和 cURL 7.73.0 起可用
CURLOPT_BINARYTRANSFER (int)
CURLOPT_NOSIGNAL (int)
CURLOPT_PROXYTYPE (int)
自 cURL 7.10 起可用。
CURLOPT_BUFFERSIZE (int)
CURLOPT_HTTPGET (int)
CURLOPT_HTTP_VERSION (int)
CURLOPT_HSTS (int)
自 PHP 8.2.0 和 cURL 7.74.0 起可用
CURLOPT_HSTS_CTRL (int)
自 PHP 8.2.0 和 cURL 7.74.0 起可用
CURLHSTS_ENABLE (int)
自 PHP 8.2.0 和 cURL 7.74.0 起可用
CURLHSTS_READONLYFILE (int)
自 PHP 8.2.0 和 cURL 7.74.0 起可用
CURLOPT_SSLKEY (int)
CURLOPT_SSLKEYTYPE (int)
CURLOPT_SSLKEYPASSWD (int)
CURLOPT_SSLENGINE (int)
CURLOPT_SSLENGINE_DEFAULT (int)
CURLOPT_SSLCERTTYPE (int)
CURLOPT_CRLF (int)
CURLOPT_ENCODING (int)
CURLOPT_PROXYPORT (int)
CURLOPT_UNRESTRICTED_AUTH (int)
CURLOPT_FTP_USE_EPRT (int)
CURLOPT_HTTP200ALIASES (int)
CURLOPT_HTTPAUTH (int)
CURLOPT_AWS_SIGV4 (int)
自 PHP 8.2.0 和 cURL 7.75.0 起可用
CURLAUTH_BASIC (int)
CURLAUTH_DIGEST (int)
CURLAUTH_GSSNEGOTIATE (int)
CURLAUTH_NEGOTIATE (int)
自 PHP 7.0.7 和 cURL 7.38.0 起可用。
CURLAUTH_NTLM (int)
CURLAUTH_NTLM_WB (int)
自 PHP 7.0.7 和 cURL 7.22.0 起可用
CURLAUTH_ANY (int)
CURLAUTH_ANYSAFE (int)
CURLAUTH_AWS_SIGV4 (int)
自 PHP 8.2.0 和 cURL 7.75.0 起可用。
CURLOPT_PROXYAUTH (int)
CURLOPT_MAIL_RCPT_ALLLOWFAILS (int)
自 PHP 8.2.0 和 cURL 7.69.0 起可用
CURLOPT_UPKEEP_INTERVAL_MS (int)
自 PHP 8.2.0 和 cURL 7.62.0 起可用
CURLOPT_MAX_RECV_SPEED_LARGE (int)
自 cURL 7.15.5 起可用
CURLOPT_MAX_SEND_SPEED_LARGE (int)
自 cURL 7.15.5 起可用
CURLOPT_HEADEROPT (int)
自 PHP 7.0.7 和 cURL 7.37.0 起可用
CURLOPT_PROXYHEADER (int)
自 PHP 7.0.7 和 cURL 7.37.0 起可用
CURLINFO_PRIVATE (int)
CURLINFO_EFFECTIVE_URL (int)
CURLINFO_HTTP_CODE (int)
自 cURL 7.10.8 起,这是 CURLINFO_RESPONSE_CODE 的旧别名
CURLINFO_PROXY_ERROR (int)
自 PHP 8.2.0 和 cURL 7.73.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_DIFFER (int)
自 PHP 8.2.0 和 cURL 7.73.0 起可用
CURLPX_IDENTD (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 起可用
CURLINFO_REFERER (int)
自 PHP 8.2.0 和 cURL 7.76.0 起可用
CURLINFO_RESPONSE_CODE (int)
自 cURL 7.10.8 起可用
CURLINFO_RETRY_AFTER (int)
自 PHP 8.2.0 和 cURL 7.66.0 起可用
CURLINFO_HEADER_OUT (int)
CURLINFO_HEADER_SIZE (int)
CURLINFO_REQUEST_SIZE (int)
CURLINFO_TOTAL_TIME (int)
CURLINFO_NAMELOOKUP_TIME (int)
CURLINFO_CONNECT_TIME (int)
CURLINFO_PRETRANSFER_TIME (int)
CURLINFO_SIZE_UPLOAD (int)
CURLINFO_SIZE_DOWNLOAD (int)
CURLINFO_SPEED_DOWNLOAD (int)
CURLINFO_SPEED_UPLOAD (int)
CURLINFO_FILETIME (int)
CURLINFO_SSL_VERIFYRESULT (int)
CURLINFO_CONTENT_LENGTH_DOWNLOAD (int)
CURLINFO_CONTENT_LENGTH_UPLOAD (int)
CURLINFO_STARTTRANSFER_TIME (int)
CURLINFO_CONTENT_TYPE (int)
CURLINFO_REDIRECT_TIME (int)
CURLINFO_REDIRECT_COUNT (int)
CURLINFO_REDIRECT_URL (int)
CURLINFO_PRIMARY_IP (int)
CURLINFO_PRIMARY_PORT (int)
CURLINFO_LOCAL_IP (int)
CURLINFO_LOCAL_PORT (int)
CURL_PUSH_OK (int)
自 PHP 7.1.0 和 cURL 7.44.0 起可用
CURL_PUSH_DENY (int)
自 PHP 7.1.0 和 cURL 7.44.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_TIMECOND_NONE (int)
CURL_TIMECOND_IFMODSINCE (int)
CURL_TIMECOND_IFUNMODSINCE (int)
CURL_TIMECOND_LASTMOD (int)
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)身份验证。 自 PHP 7.3.0 和 cURL 7.10.6 起可用(自 7.38.0 起弃用)
CURL_VERSION_HSTS (int)
自 PHP 8.2.0 和 cURL 7.74.0 起可用
CURL_VERSION_IDN (int)
国际化域名支持。 自 PHP 7.3.0 和 cURL 7.12.0 起可用
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)
支持 NTLM 委派给 winbind 助手。 自 PHP 7.3.0 和 cURL 7.22.0 起可用
CURL_VERSION_IPV6 (int)
启用 IPv6。
CURL_VERSION_KERBEROS4 (int)
Kerberos V4 身份验证支持。
CURL_VERSION_KERBEROS5 (int)
Kerberos V5 身份验证支持。 自 PHP 7.0.7 和 cURL 7.40.0 起可用
CURL_VERSION_HTTP2 (int)
内置 HTTP2 支持。 自 cURL 7.33.0 起可用
CURL_VERSION_HTTP3 (int)
自 PHP 8.2.0 和 cURL 7.66.0 起可用
CURL_VERSION_LARGEFILE (int)
支持大于 2GB 的文件。 自 cURL 7.33.0 起可用
CURL_VERSION_PSL (int)
Mozilla 的公共后缀列表,用于 cookie 域验证。 自 PHP 7.3.6 和 cURL 7.47.0 起可用
CURL_VERSION_SPNEGO (int)
SPNEGO 身份验证支持。 自 PHP 7.3.0 和 cURL 7.10.8 起可用
CURL_VERSION_SSPI (int)
基于 Windows SSPI 构建。 自 PHP 7.3.0 和 cURL 7.13.2 起可用
CURL_VERSION_SSL (int)
存在 SSL 选项。
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_VERSION_LIBZ (int)
存在 libz 功能。
CURLVERSION_NOW (int)
CURLE_OK (int)
CURLE_UNSUPPORTED_PROTOCOL (int)
CURLE_FAILED_INIT (int)
CURLE_URL_MALFORMAT (int)
CURLE_URL_MALFORMAT_USER (int)
CURLE_COULDNT_RESOLVE_PROXY (int)
CURLE_COULDNT_RESOLVE_HOST (int)
CURLE_COULDNT_CONNECT (int)
CURLE_FTP_WEIRD_SERVER_REPLY (int)
CURLE_FTP_ACCESS_DENIED (int)
CURLE_FTP_USER_PASSWORD_INCORRECT (int)
CURLE_FTP_WEIRD_PASS_REPLY (int)
CURLE_FTP_WEIRD_USER_REPLY (int)
CURLE_FTP_WEIRD_PASV_REPLY (int)
CURLE_FTP_WEIRD_227_FORMAT (int)
CURLE_FTP_CANT_GET_HOST (int)
CURLE_FTP_CANT_RECONNECT (int)
CURLE_FTP_COULDNT_SET_BINARY (int)
CURLE_PARTIAL_FILE (int)
CURLE_PROXY (int)
自 PHP 8.2.0 和 cURL 7.73.0 起可用
CURLE_FTP_COULDNT_RETR_FILE (int)
CURLE_FTP_WRITE_ERROR (int)
CURLE_FTP_QUOTE_ERROR (int)
CURLE_HTTP_NOT_FOUND (int)
CURLE_WRITE_ERROR (int)
CURLE_MALFORMAT_USER (int)
CURLE_FTP_COULDNT_STOR_FILE (int)
CURLE_READ_ERROR (int)
CURLE_OUT_OF_MEMORY (int)
CURLE_OPERATION_TIMEOUTED (int)
CURLE_FTP_COULDNT_SET_ASCII (int)
CURLE_FTP_PORT_FAILED (int)
CURLE_FTP_COULDNT_USE_REST (int)
CURLE_FTP_COULDNT_GET_SIZE (int)
CURLE_HTTP_RANGE_ERROR (int)
CURLE_HTTP_POST_ERROR (int)
CURLE_SSL_CONNECT_ERROR (int)
CURLE_FTP_BAD_DOWNLOAD_RESUME (int)
CURLE_FILE_COULDNT_READ_FILE (int)
CURLE_LDAP_CANNOT_BIND (int)
CURLE_LDAP_SEARCH_FAILED (int)
CURLE_LIBRARY_NOT_FOUND (int)
CURLE_FUNCTION_NOT_FOUND (int)
CURLE_ABORTED_BY_CALLBACK (int)
CURLE_BAD_FUNCTION_ARGUMENT (int)
CURLE_BAD_CALLING_ORDER (int)
CURLE_HTTP_PORT_FAILED (int)
CURLE_BAD_PASSWORD_ENTERED (int)
CURLE_TOO_MANY_REDIRECTS (int)
CURLE_UNKNOWN_TELNET_OPTION (int)
CURLE_TELNET_OPTION_SYNTAX (int)
CURLE_OBSOLETE (int)
CURLE_SSL_PEER_CERTIFICATE (int)
CURLE_GOT_NOTHING (int)
CURLE_SSL_ENGINE_NOTFOUND (int)
CURLE_SSL_ENGINE_SETFAILED (int)
CURLE_SEND_ERROR (int)
CURLE_RECV_ERROR (int)
CURLE_SHARE_IN_USE (int)
CURLE_SSL_CERTPROBLEM (int)
CURLE_SSL_CIPHER (int)
CURLE_SSL_CACERT (int)
CURLE_BAD_CONTENT_ENCODING (int)
CURLE_LDAP_INVALID_URL (int)
CURLE_FILESIZE_EXCEEDED (int)
CURLE_FTP_SSL_FAILED (int)
CURLE_SSH (int)
自 cURL 7.16.1 起可用。
CURLFTPAUTH_DEFAULT (int)
CURLFTPAUTH_SSL (int)
CURLFTPAUTH_TLS (int)
CURLPROXY_HTTP (int)
自 cURL 7.10 起可用。
CURLPROXY_HTTP_1_0 (int)
自 PHP 7.0.7 和 cURL 7.19.3 起可用
CURLPROXY_SOCKS4 (int)
自 cURL 7.10 起可用。
CURLPROXY_SOCKS5 (int)
自 cURL 7.10 起可用。
CURL_NETRC_OPTIONAL (int)
CURL_NETRC_IGNORED (int)
CURL_NETRC_REQUIRED (int)
CURL_HTTP_VERSION_NONE (int)
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_2_0 (int)
自 cURL 7.33.0 起可用
CURL_HTTP_VERSION_2TLS (int)
自 PHP 7.0.7 和 cURL 7.47.0 起可用
CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE (int)
自 PHP 7.0.7 和 cURL 7.49.0 起可用
CURLM_CALL_MULTI_PERFORM (int)
CURLM_OK (int)
CURLM_BAD_HANDLE (int)
CURLM_BAD_EASY_HANDLE (int)
CURLM_OUT_OF_MEMORY (int)
CURLM_INTERNAL_ERROR (int)
CURLMSG_DONE (int)
CURLOPT_KEYPASSWD (int)
CURLOPT_SSH_AUTH_TYPES (int)
CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 (int)
CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256 (int)
自 PHP 8.2.0 和 cURL 7.80.0 起可用
CURLOPT_SSH_PRIVATE_KEYFILE (int)
CURLOPT_SSH_PUBLIC_KEYFILE (int)
CURLOPT_SSL_OPTIONS (int)
自 cURL 7.25.0 起可用
CURLSSLOPT_ALLOW_BEAST (int)
自 cURL 7.25.0 起可用
CURLSSLOPT_NO_REVOKE (int)
自 PHP 7.0.7 和 cURL 7.44.0 起可用
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_REVOKE_BEST_EFFORT (int)
自 PHP 8.2.0 和 cURL 7.70.0 起可用
CURLOPT_USERNAME (int)
自 cURL 7.19.1 起可用
CURLOPT_SASL_AUTHZID (int)
自 PHP 8.2.0 和 cURL 7.66.0 起可用
CURLOPT_SASL_IR (int)
自 PHP 7.0.7 和 cURL 7.31.0 起可用
CURLOPT_DNS_INTERFACE (int)
自 PHP 7.0.7 和 cURL 7.33.0 起可用
CURLOPT_DNS_LOCAL_IP4 (int)
自 PHP 7.0.7 和 cURL 7.33.0 起可用
CURLOPT_DNS_LOCAL_IP6 (int)
自 PHP 7.0.7 和 cURL 7.33.0 起可用
CURLOPT_XOAUTH2_BEARER (int)
自 PHP 7.0.7 和 cURL 7.33.0 起可用
CURLOPT_LOGIN_OPTIONS (int)
自 PHP 7.0.7 和 cURL 7.34.0 起可用
CURLOPT_EXPECT_100_TIMEOUT_MS (int)
自 PHP 7.0.7 和 cURL 7.36.0 起可用
CURLOPT_SSL_ENABLE_ALPN (int)
自 PHP 7.0.7 和 cURL 7.36.0 起可用
CURLOPT_SSL_ENABLE_NPN (int)
自 PHP 7.0.7 和 cURL 7.36.0 起可用
CURLOPT_PINNEDPUBLICKEY (int)
自 PHP 7.0.7 和 cURL 7.39.0 起可用
CURLOPT_UNIX_SOCKET_PATH (int)
自 PHP 7.0.7 和 cURL 7.40.0 起可用
CURLOPT_SSL_VERIFYSTATUS (int)
自 PHP 7.0.7 和 cURL 7.41.0 起可用
CURLOPT_PATH_AS_IS (int)
自 PHP 7.0.7 和 cURL 7.42.0 起可用
CURLOPT_SSL_FALSESTART (int)
自 PHP 7.0.7 和 cURL 7.42.0 起可用
CURLOPT_PIPEWAIT (int)
自 PHP 7.0.7 和 cURL 7.43.0 起可用
CURLOPT_PROXY_SERVICE_NAME (int)
自 PHP 7.0.7 和 cURL 7.43.0 起可用
CURLOPT_SERVICE_NAME (int)
自 PHP 7.0.7 和 cURL 7.43.0 起可用
CURLOPT_DEFAULT_PROTOCOL (int)
自 PHP 7.0.7 和 cURL 7.45.0 起可用
CURLOPT_STREAM_WEIGHT (int)
自 PHP 7.0.7 和 cURL 7.46.0 起可用
CURLOPT_TFTP_NO_OPTIONS (int)
自 PHP 7.0.7 和 cURL 7.48.0 起可用
CURLOPT_CONNECT_TO (int)
自 PHP 7.0.7 和 cURL 7.49.0 起可用
CURLOPT_TCP_FASTOPEN (int)
自 PHP 7.0.7 和 cURL 7.49.0 起可用
CURLOPT_TCP_KEEPALIVE (int)
自 cURL 7.25.0 起可用
CURLOPT_TCP_KEEPIDLE (int)
自 cURL 7.25.0 起可用
CURLOPT_TCP_KEEPINTVL (int)
自 cURL 7.25.0 起可用
CURLMOPT_PIPELINING (int)
自 cURL 7.16.0 起可用。
CURLMOPT_MAXCONNECTS (int)
自 cURL 7.16.3 起可用。
CURLMOPT_MAX_CONCURRENT_STREAMS (int)
自 PHP 8.2.0 和 cURL 7.67.0 起可用
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_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_PUSHFUNCTION (int)
自 PHP 7.1.0 和 cURL 7.44.0 起可用
CURLSSH_AUTH_AGENT (int)
自 PHP 7.0.7 和 cURL 7.28.0 起可用
CURLSSH_AUTH_ANY (int)
CURLSSH_AUTH_DEFAULT (int)
CURLSSH_AUTH_HOST (int)
CURLSSH_AUTH_KEYBOARD (int)
CURLSSH_AUTH_NONE (int)
CURLSSH_AUTH_PASSWORD (int)
CURLSSH_AUTH_PUBLICKEY (int)
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 起可用。
CURLPIPE_NOTHING (int)
自 cURL 7.43.0 起可用。
CURLPIPE_HTTP1 (int)
自 cURL 7.43.0 起可用。
CURLPIPE_MULTIPLEX (int)
自 cURL 7.43.0 起可用。
CURLPROXY_SOCKS4A (int)
自 cURL 7.18.0 起可用。
CURLPROXY_SOCKS5_HOSTNAME (int)
自 cURL 7.18.0 起可用。
CURLHEADER_SEPARATE (int)
自 PHP 7.0.7 和 cURL 7.37.0 起可用.
CURLHEADER_UNIFIED (int)
自 PHP 7.0.7 和 cURL 7.37.0 起可用.
CURLPROTO_SMB (int)
自 PHP 7.0.7 和 cURL 7.40.0 起可用.
CURLPROTO_SMBS (int)
自 PHP 7.0.7 和 cURL 7.40.0 起可用.
CURLPROTO_MQTT (int)
自 PHP 8.2.0 和 cURL 7.71.0 起可用
CURLOPT_REQUEST_TARGET (int)
自 PHP 7.3.0 和 cURL 7.55.0 起可用。
CURLAUTH_GSSAPI (int)
自 PHP 7.3.0 和 cURL 7.54.1 起可用
CURLE_WEIRD_SERVER_REPLY (int)
自 PHP 7.3.0 和 cURL 7.51.0 起可用
CURLINFO_CONTENT_LENGTH_DOWNLOAD_T (int)
自 PHP 7.3.0 和 cURL 7.55.0 起可用
CURLINFO_CONTENT_LENGTH_UPLOAD_T (int)
自 PHP 7.3.0 和 cURL 7.55.0 起可用
CURLINFO_HTTP_VERSION (int)
自 PHP 7.3.0 和 cURL 7.50.0 起可用
CURLINFO_PROTOCOL (int)
自 PHP 7.3.0 和 cURL 7.52.0 起可用
CURLINFO_PROXY_SSL_VERIFYRESULT (int)
自 PHP 7.3.0 和 cURL 7.52.0 起可用
CURLINFO_SCHEME (int)
自 PHP 7.3.0 和 cURL 7.52.0 起可用
CURLINFO_SIZE_DOWNLOAD_T (int)
自 PHP 7.3.0 和 cURL 7.50.0 起可用
CURLINFO_SIZE_UPLOAD_T (int)
自 PHP 7.3.0 和 cURL 7.50.0 起可用
CURLINFO_SPEED_DOWNLOAD_T (int)
自 PHP 7.3.0 和 cURL 7.50.0 起可用
CURLINFO_SPEED_UPLOAD_T (int)
自 PHP 7.3.0 和 cURL 7.50.0 起可用
CURL_MAX_READ_SIZE (int)
自 PHP 7.3.0 和 cURL 7.53.0 起可用
CURLOPT_ABSTRACT_UNIX_SOCKET (int)
自 PHP 7.3.0 和 cURL 7.53.0 起可用
CURLOPT_KEEP_SENDING_ON_ERROR (int)
自 PHP 7.3.0 和 cURL 7.51.0 起可用
CURLOPT_PRE_PROXY (int)
自 PHP 7.3.0 和 cURL 7.52.0 起可用
CURLOPT_PROXY_CAINFO (int)
自 PHP 7.3.0 和 cURL 7.52.0 起可用
CURLOPT_PROXY_CAINFO_BLOB (int)
自 PHP 8.2.0 和 cURL 7.77.0 起可用
CURLOPT_PROXY_CAPATH (int)
自 PHP 7.3.0 和 cURL 7.52.0 起可用
CURLOPT_PROXY_CRLFILE (int)
自 PHP 7.3.0 和 cURL 7.52.0 起可用
CURLOPT_PROXY_KEYPASSWD (int)
自 PHP 7.3.0 和 cURL 7.52.0 起可用
CURLOPT_PROXY_PINNEDPUBLICKEY (int)
自 PHP 7.3.0 和 cURL 7.52.0 起可用
CURLOPT_PROXY_SSLCERT (int)
自 PHP 7.3.0 和 cURL 7.52.0 起可用
CURLOPT_PROXY_SSLCERTTYPE (int)
自 PHP 7.3.0 和 cURL 7.52.0 起可用
CURLOPT_PROXY_SSL_CIPHER_LIST (int)
自 PHP 7.3.0 和 cURL 7.52.0 起可用
CURLOPT_PROXY_SSLKEY (int)
自 PHP 7.3.0 和 cURL 7.52.0 起可用
CURLOPT_PROXY_SSLKEYTYPE (int)
自 PHP 7.3.0 和 cURL 7.52.0 起可用
CURLOPT_PROXY_SSL_OPTIONS (int)
自 PHP 7.3.0 和 cURL 7.52.0 起可用
CURLOPT_PROXY_SSL_VERIFYHOST (int)
自 PHP 7.3.0 和 cURL 7.52.0 起可用
CURLOPT_PROXY_SSL_VERIFYPEER (int)
自 PHP 7.3.0 和 cURL 7.52.0 起可用
CURLOPT_PROXY_SSLVERSION (int)
自 PHP 7.3.0 和 cURL 7.52.0 起可用
CURLOPT_PROXY_TLSAUTH_PASSWORD (int)
自 PHP 7.3.0 和 cURL 7.52.0 起可用
CURLOPT_PROXY_TLSAUTH_TYPE (int)
自 PHP 7.3.0 和 cURL 7.52.0 起可用
CURLOPT_PROXY_TLSAUTH_USERNAME (int)
自 PHP 7.3.0 和 cURL 7.52.0 起可用
CURLOPT_SOCKS5_AUTH (int)
自 PHP 7.3.0 和 cURL 7.55.0 起可用
CURLOPT_SUPPRESS_CONNECT_HEADERS (int)
自 PHP 7.3.0 和 cURL 7.54.0 起可用
CURLPROXY_HTTPS (int)
自 PHP 7.3.0 和 cURL 7.52.0 起可用
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_TLSv1_3 (int)
自 PHP 7.3.0 和 cURL 7.52.0 起可用
CURL_VERSION_HTTPS_PROXY (int)
自 PHP 7.3.0 和 cURL 7.52.0 起可用
CURLAUTH_BEARER (int)
自 PHP 7.3.0 和 cURL 7.61.0 起可用。
CURLINFO_APPCONNECT_TIME_T (int)
自 PHP 7.3.0 和 cURL 7.61.0 起可用
CURLINFO_CONNECT_TIME_T (int)
自 PHP 7.3.0 和 cURL 7.61.0 起可用
CURLINFO_FILETIME_T (int)
自 PHP 7.3.0 和 cURL 7.59.0 起可用
CURLINFO_NAMELOOKUP_TIME_T (int)
自 PHP 7.3.0 和 cURL 7.61.0 起可用
CURLINFO_PRETRANSFER_TIME_T (int)
自 PHP 7.3.0 和 cURL 7.61.0 起可用
CURLINFO_REDIRECT_TIME_T (int)
自 PHP 7.3.0 和 cURL 7.61.0 起可用
CURLINFO_STARTTRANSFER_TIME_T (int)
自 PHP 7.3.0 和 cURL 7.61.0 起可用
CURLINFO_TOTAL_TIME_T (int)
自 PHP 7.3.0 和 cURL 7.61.0 起可用
CURL_LOCK_DATA_CONNECT (int)
自 PHP 7.3.0 和 cURL 7.10.0 起可用
CURL_LOCK_DATA_PSL (int)
自 PHP 7.3.0 和 cURL 7.61.0 起可用
CURLOPT_DISALLOW_USERNAME_IN_URL (int)
自 PHP 7.3.0 和 cURL 7.61.0 起可用
CURLOPT_DNS_SHUFFLE_ADDRESSES (int)
自 PHP 7.3.0 和 cURL 7.60.0 起可用
CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS (int)
自 PHP 7.3.0 和 cURL 7.59.0 起可用
CURLOPT_HAPROXYPROTOCOL (int)
自 PHP 7.3.0 和 cURL 7.60.0 起可用
CURLOPT_PROXY_TLS13_CIPHERS (int)
自 PHP 7.3.0 和 cURL 7.61.0 起可用
CURLOPT_SSH_COMPRESSION (int)
自 PHP 7.3.0 和 cURL 7.56.0 起可用
CURLOPT_TIMEVALUE_LARGE (int)
自 PHP 7.3.0 和 cURL 7.59.0 起可用
CURLOPT_TLS13_CIPHERS (int)
自 PHP 7.3.0 和 cURL 7.61.0 起可用
CURLSSH_AUTH_GSSAPI (int)
自 PHP 7.3.0 和 cURL 7.58.0 起可用
CURLOPT_HTTP09_ALLOWED (int)
分别从 PHP 7.3.15 和 7.4.3 以及 cURL 7.64.0 开始可用
add a note

User Contributed Notes 6 notes

up
29
nimasdj [AT] yahoo [DOT] com
8 years ago
I hope this would be useful to convert error codes:

<?php
$curl_errno
= array(
1 => "CURLE_UNSUPPORTED_PROTOCOL",
2 => "CURLE_FAILED_INIT",
3 => "CURLE_URL_MALFORMAT",
4 => "CURLE_URL_MALFORMAT_USER",
5 => "CURLE_COULDNT_RESOLVE_PROXY",
6 => "CURLE_COULDNT_RESOLVE_HOST",
7 => "CURLE_COULDNT_CONNECT",
8 => "CURLE_FTP_WEIRD_SERVER_REPLY",
9 => "CURLE_FTP_ACCESS_DENIED",
10 => "CURLE_FTP_USER_PASSWORD_INCORRECT",
11 => "CURLE_FTP_WEIRD_PASS_REPLY",
12 => "CURLE_FTP_WEIRD_USER_REPLY",
13 => "CURLE_FTP_WEIRD_PASV_REPLY",
14 => "CURLE_FTP_WEIRD_227_FORMAT",
15 => "CURLE_FTP_CANT_GET_HOST",
16 => "CURLE_FTP_CANT_RECONNECT",
17 => "CURLE_FTP_COULDNT_SET_BINARY",
18 => "CURLE_FTP_PARTIAL_FILE or CURLE_PARTIAL_FILE",
19 => "CURLE_FTP_COULDNT_RETR_FILE",
20 => "CURLE_FTP_WRITE_ERROR",
21 => "CURLE_FTP_QUOTE_ERROR",
22 => "CURLE_HTTP_NOT_FOUND or CURLE_HTTP_RETURNED_ERROR",
23 => "CURLE_WRITE_ERROR",
24 => "CURLE_MALFORMAT_USER",
25 => "CURLE_FTP_COULDNT_STOR_FILE",
26 => "CURLE_READ_ERROR",
27 => "CURLE_OUT_OF_MEMORY",
28 => "CURLE_OPERATION_TIMEDOUT or CURLE_OPERATION_TIMEOUTED",
29 => "CURLE_FTP_COULDNT_SET_ASCII",
30 => "CURLE_FTP_PORT_FAILED",
31 => "CURLE_FTP_COULDNT_USE_REST",
32 => "CURLE_FTP_COULDNT_GET_SIZE",
33 => "CURLE_HTTP_RANGE_ERROR",
34 => "CURLE_HTTP_POST_ERROR",
35 => "CURLE_SSL_CONNECT_ERROR",
36 => "CURLE_BAD_DOWNLOAD_RESUME or CURLE_FTP_BAD_DOWNLOAD_RESUME",
37 => "CURLE_FILE_COULDNT_READ_FILE",
38 => "CURLE_LDAP_CANNOT_BIND",
39 => "CURLE_LDAP_SEARCH_FAILED",
40 => "CURLE_LIBRARY_NOT_FOUND",
41 => "CURLE_FUNCTION_NOT_FOUND",
42 => "CURLE_ABORTED_BY_CALLBACK",
43 => "CURLE_BAD_FUNCTION_ARGUMENT",
44 => "CURLE_BAD_CALLING_ORDER",
45 => "CURLE_HTTP_PORT_FAILED",
46 => "CURLE_BAD_PASSWORD_ENTERED",
47 => "CURLE_TOO_MANY_REDIRECTS",
48 => "CURLE_UNKNOWN_TELNET_OPTION",
49 => "CURLE_TELNET_OPTION_SYNTAX",
50 => "CURLE_OBSOLETE",
51 => "CURLE_SSL_PEER_CERTIFICATE",
52 => "CURLE_GOT_NOTHING",
53 => "CURLE_SSL_ENGINE_NOTFOUND",
54 => "CURLE_SSL_ENGINE_SETFAILED",
55 => "CURLE_SEND_ERROR",
56 => "CURLE_RECV_ERROR",
57 => "CURLE_SHARE_IN_USE",
58 => "CURLE_SSL_CERTPROBLEM",
59 => "CURLE_SSL_CIPHER",
60 => "CURLE_SSL_CACERT",
61 => "CURLE_BAD_CONTENT_ENCODING",
62 => "CURLE_LDAP_INVALID_URL",
63 => "CURLE_FILESIZE_EXCEEDED",
64 => "CURLE_FTP_SSL_FAILED",
79 => "CURLE_SSH"
);
?>
up
7
uramihsayibok, gmail, com
8 years ago
Regarding CURLE_OPERATION_TIMEDOUT vs. CURLE_OPERATION_TIMEOUTED:

Originally cURL had the constant named TIMEOUTED (read: "timeout-ed"). This was changed[1] in 2007 and v7.17.0 to be TIMEDOUT (read: "timed out") and the old constant kept in place as an alias.

PHP started off using TIMEOUTED as well. The TIMEDOUT constant was added[2] in 2012 and v5.5.0 and the old constant was *kept in place*.

If you ask me, the TIMEDOUT constant reads more nicely (not to mention is technically the correct one to use) and as long as you're using PHP 5.5+ then it is available. If you have to support older versions then I suggest you keep using the new constant and add a polyfill like

<?php
if (version_compare(PHP_VERSION, "5.5.0", "<")) {
define("CURLE_OPERATION_TIMEDOUT", CURLE_OPERATION_TIMEOUTED);
}
?>

or

<?php
// PHP <5.5.0
defined("CURLE_OPERATION_TIMEDOUT") || define("CURLE_OPERATION_TIMEDOUT", CURLE_OPERATION_TIMEOUTED);
?>

to be removed once you stop supporting them.

[1] https://github.com/bagder/curl/commit/9f44a95522162c0f4a61093efe1bf1f58b087358#diff-d8c6cb80505e0f7d5e27fca2a682aa34L119
[2] https://github.com/php/php-src/commit/9ab45d3edbafa3ee751472c3f8d1fb3f51f38cf1#diff-ac978e3de205f1d14eb960e0eb15ef24R723
up
17
s dot coletta at unidata dot it
14 years ago
Beware of CURLE_* constants!

On the official site:

http://curl.haxx.se/libcurl/c/libcurl-errors.html

some constants are different, some missing compared to the PHP implementation.

Some examples:

in PHP the curl error number 28 is called

CURLE_OPERATION_TIMEOUTED

while in the official site is:

CURLE_OPERATION_TIMEDOUT

So if you use the second, it won't march the error 28 because in PHP it is not defined that way.

The same is for these:

CURLE_HTTP_RETURNED_ERROR
CURLE_UPLOAD_FAILED
CURLE_INTERFACE_FAILED
CURLE_SSL_CERTPROBLEM
CURLE_SEND_FAIL_REWIND
CURLE_LOGIN_DENIED
CURLE_AGAIN

that are in someway named differently or missing from PHP.
up
4
me at ruslanbes dot com
8 years ago
Note that prior to PHP 5.5 following constants were missing and were available only through their numeric values:

CURL_SSLVERSION_DEFAULT // 0
CURL_SSLVERSION_TLSv1 // 1
CURL_SSLVERSION_SSLv2 // 2
CURL_SSLVERSION_SSLv3 // 3

This was fixed after this support request: https://bugs.php.net/bug.php?id=62318
up
6
Ron
16 years ago
<?
/*
* Author: Ron
* Released: August 4, 2007
* Description: An example of the disguise_curl() function in order to grab contents from a website while remaining fully camouflaged by using a fake user agent and fake headers.
*/

$url = 'http://www.ericgiguere.com/tools/http-header-viewer.html';

// disguises the curl using fake headers and a fake user agent.
function disguise_curl($url)
{
$curl = curl_init();

// Setup headers - I used the same headers from Firefox version 2.0.0.6
// below was split up because php.net said the line was too long. :/
$header[0] = "Accept: text/xml,application/xml,application/xhtml+xml,";
$header[0] .= "text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5";
$header[] = "Cache-Control: max-age=0";
$header[] = "Connection: keep-alive";
$header[] = "Keep-Alive: 300";
$header[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7";
$header[] = "Accept-Language: en-us,en;q=0.5";
$header[] = "Pragma: "; // browsers keep this blank.

curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_USERAGENT, 'Googlebot/2.1 (+http://www.google.com/bot.html)');
curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
curl_setopt($curl, CURLOPT_REFERER, 'http://www.google.com');
curl_setopt($curl, CURLOPT_ENCODING, 'gzip,deflate');
curl_setopt($curl, CURLOPT_AUTOREFERER, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_TIMEOUT, 10);

$html = curl_exec($curl); // execute the curl command
curl_close($curl); // close the connection

return $html; // and finally, return $html
}

// uses the function and displays the text off the website
$text = disguise_curl($url);
echo $text;
?>

~Ron
up
1
jrschlosser
5 years ago
In PHP version 7.1.11 there is also constants for HTTP/2 :
CURL_VERSION_HTTP2 = 65536 (1 << 16)
CURL_HTTP_VERSION_2_0 = 3

I don't know the first version of PHP that defines it.
To Top