CURLOPT_BUFFERSIZE |
每次读入的缓冲的尺寸。当然不保证每次都会完全填满这个尺寸。
|
在cURL 7.10中被加入。
|
CURLOPT_CLOSEPOLICY |
CURLCLOSEPOLICY_* 中的一个。
注意:
此选项已被废弃,它不会被实现,永远不会有效果啦。
|
PHP 5.6.0 中移除。
|
CURLOPT_CONNECTTIMEOUT |
在尝试连接时等待的秒数。设置为0,则无限等待。
|
|
CURLOPT_CONNECTTIMEOUT_MS |
尝试连接等待的时间,以毫秒为单位。设置为0,则无限等待。
如果 libcurl 编译时使用系统标准的名称解析器( standard system name resolver),那部分的连接仍旧使用以秒计的超时解决方案,最小超时时间还是一秒钟。
|
在 cURL 7.16.2 中被加入。从 PHP 5.2.3 开始可用。
|
CURLOPT_DNS_CACHE_TIMEOUT |
设置在内存中缓存 DNS 的时间,默认为120秒(两分钟)。
|
|
CURLOPT_EXPECT_100_TIMEOUT_MS |
超时预计: 100毫秒内的 continue 响应
默认为 1000 毫秒。
|
cURL 7.36.0 中添加,自 PHP 7.0.7 有效。
|
CURLOPT_FTPSSLAUTH |
FTP验证方式(启用的时候):CURLFTPAUTH_SSL (首先尝试SSL),CURLFTPAUTH_TLS (首先尝试TLS)或CURLFTPAUTH_DEFAULT (让cURL 自个儿决定)。
|
在 cURL 7.12.2 中被加入。
|
CURLOPT_HEADEROPT |
How to deal with headers. One of the following constants:
CURLHEADER_UNIFIED : the headers specified in
CURLOPT_HTTPHEADER will be used in requests
both to servers and proxies. With this option enabled,
CURLOPT_PROXYHEADER will not have any effect.
CURLHEADER_SEPARATE : makes
CURLOPT_HTTPHEADER headers only get sent to
a server and not to a proxy. Proxy headers must be set with
CURLOPT_PROXYHEADER to get used. Note that if
a non-CONNECT request is sent to a proxy, libcurl will send both
server headers and proxy headers. When doing CONNECT, libcurl will
send CURLOPT_PROXYHEADER headers only to the
proxy and then CURLOPT_HTTPHEADER headers
only to the server.
Defaults to CURLHEADER_SEPARATE as of cURL
7.42.1, and CURLHEADER_UNIFIED before.
|
Added in cURL 7.37.0. Available since PHP 7.0.7.
|
CURLOPT_HTTP_VERSION |
CURL_HTTP_VERSION_NONE (默认值,让 cURL 自己判断使用哪个版本),CURL_HTTP_VERSION_1_0 (强制使用 HTTP/1.0)或CURL_HTTP_VERSION_1_1 (强制使用 HTTP/1.1)。
|
|
CURLOPT_HTTPAUTH |
使用的 HTTP 验证方法。选项有:
CURLAUTH_BASIC 、
CURLAUTH_DIGEST 、
CURLAUTH_GSSNEGOTIATE 、
CURLAUTH_NTLM 、
CURLAUTH_ANY 和
CURLAUTH_ANYSAFE 。
可以使用 | 位域(OR)操作符结合多个值,cURL 会让服务器选择受支持的方法,并选择最好的那个。
CURLAUTH_ANY 是 CURLAUTH_BASIC | CURLAUTH_DIGEST | CURLAUTH_GSSNEGOTIATE | CURLAUTH_NTLM 的别名。
CURLAUTH_ANYSAFE 是 CURLAUTH_DIGEST | CURLAUTH_GSSNEGOTIATE | CURLAUTH_NTLM 的别名。
|
|
CURLOPT_INFILESIZE |
希望传给远程站点的文件尺寸,字节(byte)为单位。
注意无法用这个选项阻止 libcurl 发送更多的数据,确切发送什么取决于 CURLOPT_READFUNCTION 。
|
|
CURLOPT_LOW_SPEED_LIMIT |
传输速度,每秒字节(bytes)数,根据CURLOPT_LOW_SPEED_TIME 秒数统计是否因太慢而取消传输。
|
|
CURLOPT_LOW_SPEED_TIME |
当传输速度小于CURLOPT_LOW_SPEED_LIMIT 时(bytes/sec),PHP会判断是否因太慢而取消传输。
|
|
CURLOPT_MAXCONNECTS |
允许的最大连接数量。达到限制时,会通过CURLOPT_CLOSEPOLICY 决定应该关闭哪些连接。
|
|
CURLOPT_MAXREDIRS |
指定最多的 HTTP 重定向次数,这个选项是和CURLOPT_FOLLOWLOCATION 一起使用的。
|
|
CURLOPT_PORT |
用来指定连接端口。
|
|
CURLOPT_POSTREDIR |
位掩码, 1 (301 永久重定向), 2 (302 Found)
和 4 (303 See Other)
设置 CURLOPT_FOLLOWLOCATION 时,什么情况下需要再次 HTTP POST 到重定向网址。
|
cURL 7.19.1 中添加,PHP 5.3.2 开始可用。
|
CURLOPT_PROTOCOLS |
CURLPROTO_* 的位掩码。
启用时,会限制 libcurl 在传输过程中可使用哪些协议。
这将允许你在编译libcurl时支持众多协议,但是限制只用允许的子集。默认 libcurl 将使用所有支持的协议。
参见CURLOPT_REDIR_PROTOCOLS 。
可用的协议选项为:
CURLPROTO_HTTP 、
CURLPROTO_HTTPS 、
CURLPROTO_FTP 、
CURLPROTO_FTPS 、
CURLPROTO_SCP 、
CURLPROTO_SFTP 、
CURLPROTO_TELNET 、
CURLPROTO_LDAP 、
CURLPROTO_LDAPS 、
CURLPROTO_DICT 、
CURLPROTO_FILE 、
CURLPROTO_TFTP 、
CURLPROTO_ALL 。
|
在 cURL 7.19.4 中被加入。
|
CURLOPT_PROXYAUTH |
HTTP 代理连接的验证方式。使用在CURLOPT_HTTPAUTH 中的位掩码。
当前仅仅支持 CURLAUTH_BASIC 和CURLAUTH_NTLM 。
|
在 cURL 7.10.7 中被加入。
|
CURLOPT_PROXYPORT |
代理服务器的端口。端口也可以在CURLOPT_PROXY 中设置。
|
|
CURLOPT_PROXYTYPE |
可以是 CURLPROXY_HTTP (默认值)
CURLPROXY_SOCKS4 、
CURLPROXY_SOCKS5 、
CURLPROXY_SOCKS4A 或
CURLPROXY_SOCKS5_HOSTNAME 。
|
在 cURL 7.10 中被加入。
|
CURLOPT_REDIR_PROTOCOLS |
CURLPROTO_* 值的位掩码。如果被启用,位掩码会限制 libcurl 在 CURLOPT_FOLLOWLOCATION 开启时,使用的协议。
默认允许除 FILE 和 SCP 外所有协议。
这和 7.19.4 前的版本无条件支持所有支持的协议不同。关于协议常量,请参照CURLOPT_PROTOCOLS 。
|
在 cURL 7.19.4 中被加入。
|
CURLOPT_RESUME_FROM |
在恢复传输时,传递字节为单位的偏移量(用来断点续传)。
|
|
CURLOPT_SSL_OPTIONS |
Set SSL behavior options, which is a bitmask of any of the following constants:
CURLSSLOPT_ALLOW_BEAST : do not attempt to use
any workarounds for a security flaw in the SSL3 and TLS1.0 protocols.
CURLSSLOPT_NO_REVOKE : disable certificate
revocation checks for those SSL backends where such behavior is
present.
|
Added in cURL 7.25.0. Available since PHP 7.0.7.
|
CURLOPT_SSL_VERIFYHOST |
设置为 1 是检查服务器SSL证书中是否存在一个公用名(common name)。译者注:公用名(Common Name)一般来讲就是填写你将要申请SSL证书的域名 (domain)或子域名(sub domain)。
设置成 2,会检查公用名是否存在,并且是否与提供的主机名匹配。
0 为不检查名称。
在生产环境中,这个值应该是 2 (默认值)。
|
值 1 的支持在 cURL 7.28.1 中被删除了。
|
CURLOPT_SSLVERSION |
CURL_SSLVERSION_DEFAULT (0),
CURL_SSLVERSION_TLSv1 (1),
CURL_SSLVERSION_SSLv2 (2),
CURL_SSLVERSION_SSLv3 (3),
CURL_SSLVERSION_TLSv1_0 (4),
CURL_SSLVERSION_TLSv1_1 (5) ,
CURL_SSLVERSION_TLSv1_2 (6) 中的其中一个。
注意:
你最好别设置这个值,让它使用默认值。
设置为 2 或 3 比较危险,在 SSLv2 和 SSLv3 中有弱点存在。
|
|
CURLOPT_STREAM_WEIGHT |
设置 stream weight 数值 ( 1 和 256 之间的数字).
|
cURL 7.46.0 中添加,自 PHP 7.0.7 起有效。
|
CURLOPT_TIMECONDITION |
设置如何对待 CURLOPT_TIMEVALUE 。
使用 CURL_TIMECOND_IFMODSINCE ,仅在页面 CURLOPT_TIMEVALUE 之后修改,才返回页面。没有修改则返回 "304 Not Modified" 头,假设设置了 CURLOPT_HEADER 为 true 。CURL_TIMECOND_IFUNMODSINCE 则起相反的效果。
默认为 CURL_TIMECOND_IFMODSINCE 。
|
|
CURLOPT_TIMEOUT |
允许 cURL 函数执行的最长秒数。
|
|
CURLOPT_TIMEOUT_MS |
设置cURL允许执行的最长毫秒数。
如果 libcurl 编译时使用系统标准的名称解析器( standard system name resolver),那部分的连接仍旧使用以秒计的超时解决方案,最小超时时间还是一秒钟。
|
在 cURL 7.16.2 中被加入。从 PHP 5.2.3 起可使用。
|
CURLOPT_TIMEVALUE |
秒数,从 1970年1月1日开始。这个时间会被 CURLOPT_TIMECONDITION 使。默认使用CURL_TIMECOND_IFMODSINCE 。
|
|
CURLOPT_MAX_RECV_SPEED_LARGE |
如果下载速度超过了此速度(以每秒字节数来统计) ,即传输过程中累计的平均数,传输就会降速到这个参数的值。默认不限速。
|
cURL 7.15.5 中添加, PHP 5.4.0 有效。
|
CURLOPT_MAX_SEND_SPEED_LARGE |
如果上传的速度超过了此速度(以每秒字节数来统计),即传输过程中累计的平均数
,传输就会降速到这个参数的值。默认不限速。
|
cURL 7.15.5 中添加, PHP 5.4.0 有效。
|
CURLOPT_SSH_AUTH_TYPES |
A bitmask consisting of one or more of
CURLSSH_AUTH_PUBLICKEY ,
CURLSSH_AUTH_PASSWORD ,
CURLSSH_AUTH_HOST ,
CURLSSH_AUTH_KEYBOARD . Set to
CURLSSH_AUTH_ANY to let libcurl pick one.
|
cURL 7.16.1 中添加。
|
CURLOPT_IPRESOLVE |
允许程序选择想要解析的 IP 地址类别。只有在地址有多种 ip 类别的时候才能用,可以的值有:
CURL_IPRESOLVE_WHATEVER 、
CURL_IPRESOLVE_V4 、
CURL_IPRESOLVE_V6 ,默认是
CURL_IPRESOLVE_WHATEVER 。
|
cURL 7.10.8 中添加。
|
CURLOPT_FTP_FILEMETHOD |
告诉 curl 使用哪种方式来获取 FTP(s) 服务器上的文件。可能的值有:
CURLFTPMETHOD_MULTICWD 、
CURLFTPMETHOD_NOCWD 和
CURLFTPMETHOD_SINGLECWD 。
|
cURL 7.15.1 中添加, PHP 5.3.0 起有效。
|