## 可选参数,value应该被设置一个string类型的值:
对于下面的这些option的可选参数,value应该被设置一个string类型的值:
| 选项 | 可选*value*值 | 备注 |
| --- | --- | --- |
| **CURLOPT_CAINFO** | 一个保存着1个或多个用来让服务端验证的证书的文件名。这个参数仅仅在和**CURLOPT_SSL_VERIFYPEER**一起使用时才有意义。 . | |
| **CURLOPT_CAPATH** | 一个保存着多个CA证书的目录。这个选项是和**CURLOPT_SSL_VERIFYPEER**一起使用的。 | |
| **CURLOPT_COOKIE** | 设定HTTP请求中*"Cookie: "*部分的内容。多个cookie用分号分隔,分号后带一个空格(例如, "*fruit=apple; colour=red*")。 | |
| **CURLOPT_COOKIEFILE** | 包含cookie数据的文件名,cookie文件的格式可以是Netscape格式,或者只是纯HTTP头部信息存入文件。 | |
| **CURLOPT_COOKIEJAR** | 连接结束后保存cookie信息的文件。 | |
| **CURLOPT_CUSTOMREQUEST** | 使用一个自定义的请求信息来代替*"GET"*或*"HEAD"*作为HTTP请求。这对于执行*"DELETE"*或者其他更隐蔽的HTTP请求。有效值如*"GET"*,*"POST"*,*"CONNECT"*等等。也就是说,不要在这里输入整个HTTP请求。例如输入*"GET /index.html HTTP/1.0\\r\\n\\r\\n"*是不正确的。 **Note**: 在确定服务器支持这个自定义请求的方法前不要使用。 | |
| **CURLOPT_EGDSOCKET** | 类似**CURLOPT_RANDOM_FILE**,除了一个Entropy Gathering Daemon套接字。 | |
| **CURLOPT_ENCODING** | HTTP请求头中*"Accept-Encoding: "*的值。支持的编码有*"identity"*,*"deflate"*和*"gzip"*。如果为空字符串*""*,请求头会发送所有支持的编码类型。 | 在cURL 7.10中被加入。 |
| **CURLOPT_FTPPORT** | 这个值将被用来获取供FTP"POST"指令所需要的IP地址。"POST"指令告诉远程服务器连接到我们指定的IP地址。这个字符串可以是纯文本的IP地址、主机名、一个网络接口名(UNIX下)或者只是一个'-'来使用默认的IP地址。 | |
| **CURLOPT_INTERFACE** | 网络发送接口名,可以是一个接口名、IP地址或者是一个主机名。 | |
| **CURLOPT_KRB4LEVEL** | KRB4 (Kerberos 4) 安全级别。下面的任何值都是有效的(从低到高的顺序):*"clear"*、*"safe"*、*"confidential"*、*"private".*。如果字符串和这些都不匹配,将使用*"private"*。这个选项设置为**NULL**时将禁用KRB4 安全认证。目前KRB4 安全认证只能用于FTP传输。 | |
| **CURLOPT_POSTFIELDS** | 全部数据使用HTTP协议中的"POST"操作来发送。要发送文件,在文件名前面加上*@*前缀并使用完整路径。这个参数可以通过urlencoded后的字符串类似'*para1=val1¶2=val2&...*'或使用一个以字段名为键值,字段数据为值的数组。如果*value*是一个数组,*Content-Type*头将会被设置成*multipart/form-data*。 | |
| **CURLOPT_PROXY** | HTTP代理通道。 | |
| **CURLOPT_PROXYUSERPWD** | 一个用来连接到代理的*"\[username\]:\[password\]"*格式的字符串。 | |
| **CURLOPT_RANDOM_FILE** | 一个被用来生成SSL随机数种子的文件名。 | |
| **CURLOPT_RANGE** | 以*"X-Y"*的形式,其中X和Y都是可选项获取数据的范围,以字节计。HTTP传输线程也支持几个这样的重复项中间用逗号分隔如*"X-Y,N-M"*。 | |
| **CURLOPT_REFERER** | 在HTTP请求头中*"Referer: "*的内容。 | |
| **CURLOPT_SSL_CIPHER_LIST** | 一个SSL的加密算法列表。例如*RC4-SHA*和*TLSv1*都是可用的加密列表。 | |
| **CURLOPT_SSLCERT** | 一个包含PEM格式证书的文件名。 | |
| **CURLOPT_SSLCERTPASSWD** | 使用**CURLOPT_SSLCERT**证书需要的密码。 | |
| **CURLOPT_SSLCERTTYPE** | 证书的类型。支持的格式有*"PEM"*(默认值),*"DER"*和*"ENG"*。 | 在cURL 7.9.3中被加入。 |
| **CURLOPT_SSLENGINE** | 用来在**CURLOPT_SSLKEY**中指定的SSL私钥的加密引擎变量。 | |
| **CURLOPT_SSLENGINE_DEFAULT** | 用来做非对称加密操作的变量。 | |
| **CURLOPT_SSLKEY** | 包含SSL私钥的文件名。 | |
| **CURLOPT_SSLKEYPASSWD** | 在**CURLOPT_SSLKEY**中指定了的SSL私钥的密码。 **Note**: 由于这个选项包含了敏感的密码信息,记得保证这个PHP脚本的安全。 | |
| **CURLOPT_SSLKEYTYPE** | **CURLOPT_SSLKEY**中规定的私钥的加密类型,支持的密钥类型为*"PEM"*(默认值)、*"DER"*和*"ENG"*。 | |
| **CURLOPT_URL** | 需要获取的URL地址,也可以在curl_init()函数中设置。 | |
| **CURLOPT_USERAGENT** | 在HTTP请求中包含一个*"User-Agent: "*头的字符串。 | |
| **CURLOPT_USERPWD** | 传递一个连接中需要的用户名和密码,格式为:*"\[username\]:\[password\]"*。 | |