`
- 浏览:
156304 次
- 性别:
- 来自:
深圳
-
PHP中curl_setopt的CURLOPT系列 选项(转)
curl_setopt()函数将为一个CURL会话设置选项。option参数是你想要的设置,value是这个选项给定的值。
下列选项的值将被作为长整形使用(在option参数中指定):
*CURLOPT_INFILESIZE: 当你上传一个文件到远程站点,这个选项告诉PHP你上传文件的大小。
*CURLOPT_VERBOSE: 如果你想CURL报告每一件意外的事情,设置这个选项为一个非零值。
*CURLOPT_HEADER: 如果你想把一个头包含在输出中,设置这个选项为一个非零值。
*CURLOPT_NOPROGRESS: 如果你不会PHP为CURL传输显示一个进程条,设置这个选项为一个非零值。
注意:PHP自动设置这个选项为非零值,你应该仅仅为了调试的目的来改变这个选项。
*CURLOPT_NOBODY: 如果你不想在输出中包含body部分,设置这个选项为一个非零值。
*CURLOPT_FAILONERROR: 如果你想让PHP在发生错误(HTTP代码返回大于等于300)时,不显示,设置这个选项为一人非零值。默认行为是返回一个正常页,忽略代码。
*CURLOPT_UPLOAD: 如果你想让PHP为上传做准备,设置这个选项为一个非零值。
*CURLOPT_POST: 如果你想PHP去做一个正规的HTTP POST,设置这个选项为一个非零值。这个POST是普通的 application/x-www-from-urlencoded 类型,多数被HTML表单使用。
*CURLOPT_FTPLISTONLY: 设置这个选项为非零值,PHP将列出FTP的目录名列表。
*CURLOPT_FTPAPPEND: 设置这个选项为一个非零值,PHP将应用远程文件代替覆盖它。
*CURLOPT_NETRC: 设置这个选项为一个非零值,PHP将在你的 ~./netrc 文件中查找你要建立连接的远程站点的用户名及密码。
*CURLOPT_FOLLOWLOCATION: 设置这个选项为一个非零值(象 “Location: “)的头,服务器会把它当做HTTP头的一部分发送(注意这是递归的,PHP将发送形如 “Location: “的头)。
*CURLOPT_PUT: 设置这个选项为一个非零值去用HTTP上传一个文件。要上传这个文件必须设置CURLOPT_INFILE和CURLOPT_INFILESIZE选项.
*CURLOPT_MUTE: 设置这个选项为一个非零值,PHP对于CURL函数将完全沉默。
*CURLOPT_TIMEOUT: 设置一个长整形数,作为最大延续多少秒。
*CURLOPT_LOW_SPEED_LIMIT: 设置一个长整形数,控制传送多少字节。
*CURLOPT_LOW_SPEED_TIME: 设置一个长整形数,控制多少秒传送CURLOPT_LOW_SPEED_LIMIT规定的字节数。
*CURLOPT_RESUME_FROM: 传递一个包含字节偏移地址的长整形参数,(你想转移到的开始表单)。
*CURLOPT_SSLVERSION: 传递一个包含SSL版本的长参数。默认PHP将被它自己努力的确定,在更多的安全中你必须手工设置。
*CURLOPT_TIMECONDITION: 传递一个长参数,指定怎么处理CURLOPT_TIMEVALUE参数。你可以设置这个参数为TIMECOND_IFMODSINCE 或 TIMECOND_ISUNMODSINCE。这仅用于HTTP。
*CURLOPT_TIMEVALUE: 传递一个从1970-1-1开始到现在的秒数。这个时间将被CURLOPT_TIMEVALUE选项作为指定值使用,或被默认TIMECOND_IFMODSINCE使用。
下列选项的值将被作为字符串:
*CURLOPT_URL: 这是你想用PHP取回的URL地址。你也可以在用curl_init()函数初始化时设置这个选项。
*CURLOPT_USERPWD: 传递一个形如[username]:[password]风格的字符串,作用PHP去连接。
*CURLOPT_PROXYUSERPWD: 传递一个形如[username]:[password] 格式的字符串去连接HTTP代理。
*CURLOPT_RANGE: 传递一个你想指定的范围。它应该是”X-Y”格式,X或Y是被除外的。HTTP传送同样支持几个间隔,用逗句来分隔(X-Y,N-M)。
*CURLOPT_POSTFIELDS: 传递一个作为HTTP “POST”操作的所有数据的字符串。
*CURLOPT_REFERER: 在HTTP请求中包含一个”referer”头的字符串。
*CURLOPT_USERAGENT: 在HTTP请求中包含一个”user-agent”头的字符串。
*CURLOPT_FTPPORT: 传递一个包含被ftp “POST”指令使用的IP地址。这个POST指令告诉远程服务器去连接我们指定的IP地址。 这个字符串可以是一个IP地址,一个主机名,一个网络界面名(在UNIX下),或是‘-’(使用系统默认IP地址)。
*CURLOPT_COOKIE: 传递一个包含HTTP cookie的头连接。
*CURLOPT_SSLCERT: 传递一个包含PEM格式证书的字符串。
*CURLOPT_SSLCERTPASSWD: 传递一个包含使用CURLOPT_SSLCERT证书必需的密码。
*CURLOPT_COOKIEFILE: 传递一个包含cookie数据的文件的名字的字符串。这个cookie文件可以是Netscape格式,或是堆存在文件中的HTTP风格的头。
*CURLOPT_CUSTOMREQUEST: 当进行HTTP请求时,传递一个字符被GET或HEAD使用。为进行DELETE或其它操作是有益的,更Pass a string to be used instead of GET or HEAD when doing an HTTP request. This is useful for doing or another, more obscure, HTTP request.
注意: 在确认你的服务器支持命令先不要去这样做。
下列的选项要求一个文件描述(通过使用fopen()函数获得):
*CURLOPT_FILE: 这个文件将是你放置传送的输出文件,默认是STDOUT.
*CURLOPT_INFILE: 这个文件是你传送过来的输入文件。
*CURLOPT_WRITEHEADER: 这个文件写有你输出的头部分。
*CURLOPT_STDERR: 这个文件写有错误而不是stderr。
用来获取需要登录的页面的例子,当前做法是每次或许都登录一次,有需要的人再做改进了。
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
curl_setopt($ch, CURLOPT_URL, $url); // 设置 Curl 目标 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // Curl 请求有返回的值 curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); // 设置抓取超时时间 ...
`curl_setopt`函数是PHP中处理HTTP请求的强大工具,结合多种选项,开发者可以模拟各种网络交互,包括登录、API调用、文件上传等。理解并熟练使用这些选项,能够极大地提高Web应用程序的功能和灵活性。在实际开发中,...
`curl_setopt()` 函数在PHP中是用于设置cURL会话的选项,它允许你在执行HTTP请求时定制各种参数,从而实现不同的网络交互需求。在处理网页抓取、数据提交等任务时,`curl_setopt()` 非常关键。下面我们将详细解释...
本篇将详细讲解如何利用`curl`的`CURLOPT_PROGRESSFUNCTION`选项来实现自定义进度条。 `CURLOPT_PROGRESSFUNCTION`是libcurl库(`curl`的底层库)提供的一种回调机制,允许我们在数据传输过程中执行自定义操作,...
在PHP中,`curl_setopt()`函数是用于设置cURL会话的各种选项的,它允许开发者自定义cURL请求的行为。这个函数的语法是`curl_setopt($ch, $option, $value)`,其中 `$ch` 是cURL句柄,`$option` 是要设置的选项,而`$...
2. **CURLOPT_VERBOSE**: 设置为非零值,cURL将在执行过程中输出详细的日志信息,这对于调试非常有用。 3. **CURLOPT_HEADER**: 如果设置为非零值,cURL会将服务器响应的头部信息包含在返回的结果中。 4. **...
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 1); curl_setopt($curl, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); curl_setopt($curl, CURLOPT_...
curl_setopt($ch, CURLOPT_POSTFIELDS, array('param1' => 'value1', 'param2' => 'value2')); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($ch); curl_close($ch); echo $...
在这个例子中,`curl_setopt()` 函数设置了两个选项:`CURLOPT_URL` 指定了要访问的 URL,`CURLOPT_HEADER` 设置为 false 表示不返回头部信息。 ### 2. POST 数据案例 ```php $ch = curl_init(); $data = 'phone='...
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // 返回数据而非直接输出 $data = curl_exec($curl); // 执行请求 curl_close($curl); // 关闭连接 var_dump($data); // 输出获取的数据 ``` 在需要POST数据时,...
1. **CURLOPT_TIMEOUT**: 这个选项用来设置cURL允许执行的最长秒数。如果你设置了一个时间限制,例如60秒,那么如果在60秒内没有接收到任何响应,cURL会抛出一个错误并停止执行。在下面的示例代码中,你可以看到如何...
curl_setopt($curl_obj, CURLOPT_USERAGENT, "user-agent:Mozilla/5.0 (Windows NT 5.1; rv:24.0) Gecko/20100101 Firefox/24.0"); curl_setopt($curl_obj, CURLOPT_HEADER, 0); curl_setopt($curl_obj, CURLOPT_...
下列选项的值将被作为长整形使用(在option参数中指定): CURLOPT_INFILESIZE: 当你上传一个文件到远程站点,这个选项告诉PHP你上传文件的大小。 CURLOPT_VERBOSE: 如果你想CURL报告每一件意外的事
一、定义Cookie存储路径 必须使用绝对路径 $cookie_jar = dirname(__FILE__).”/pic.cookie”; 二、获取Cookie 将cookie存入文件 ... $ch = curl_init();...curl_setopt($ch, ...curl_setopt($ch, CURLOPT_COOKIEJAR, $
3. **设置上传选项**:使用`CURLOPT_UPLOAD`选项开启上传模式,并使用`CURLOPT_READFUNCTION`和`CURLOPT_READDATA`指定读取本地文件的数据源。 4. **执行请求**:调用`curl_easy_perform()`执行FTP上传操作。 5. *...