`

PHP中curl相关函数详解之curl_setopt()函数

    博客分类:
  • PHP
阅读更多

curl_setopt()参数的功能是为一个的curl设置对话参数。

‍curl_setopt_array()参数的功能是以数组的形式为一个的curl设置对话参数。

----------------------------

‍<?php

$ch = curl_init();
$fp = fopen(“for instance_habitatpage.txt”, “w”);
curl_setopt($ch, CURLOPT_FILE, $fp);
$options = array(
CURLOPT_URL => ‘http://www.baidu.com/’,
CURLOPT_HEADER => false
);
curl_setopt_array($ch, $options);
curl_exec($ch);
curl_close($ch);
fclose($fp);

?>

------------------------

 

可选参数:

 

CURLOPT_HEADER:设为1,则在返回的内容里包含http header;

 

CURLOPT_FOLLOWLOCATION:设为0,则不会自动301,302跳转;

 

*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.注意: 在确认你的服务器支持命前令先不要去这样做。

*CURLOPT_RETURNTRANSFER:如果为TRUE,则curl_exec()函数返回一个包含响应内容的字符串,而不是直接把响应输出到客户端。在使用curl_multi_getcontent()时,需要将这个参数设置为TRUE。

 

 

下列的选项要求一个文件描述(通过使用fopen()函数获得):

 

*CURLOPT_FILE: 这个文件将是你放置传送的输出文件,默认是STDOUT.

*CURLOPT_INFILE: 这个文件是你传送过来的输入文件。

*CURLOPT_WRITEHEADER: 这个文件写有你输出的头部分。

*CURLOPT_STDERR: 这个文件写有错误而不是stderr。

 

 

 

分享到:
评论

相关推荐

    php中的curl_multi系列函数用法例子__1.docx

    在PHP中,`curl_multi`系列函数用于并发处理多个cURL请求,显著提高了效率,特别是当你需要从多个URL获取数据时。这些函数在手册中可能描述得不够详细,但它们是实现批量HTTP请求的关键工具。下面我们将深入探讨如何...

    curl_自定义进度条

    然后,我们需要在`curl_easy_setopt`中设置这个回调函数,如下所示: ```c curl_easy_setopt(curl, CURLOPT_PROGRESSFUNCTION, progress_callback); ``` `clientp`参数可以传递任何你想要在回调函数中使用的自定义...

    php下curl用法详解

    在PHP中,cURL库是一个强大的工具,用于执行HTTP和其他协议的请求,它允许开发者模拟浏览器行为,如发送POST请求、处理cookies、设置代理等。本文将深入解析PHP下的cURL用法,以便更好地理解和应用。 1. **初始化...

    Curl获取网络时间.zip_Curl获取网络时间_curl 时间_curl 网络时间_网络时间 curl_网络时间获取

    本教程将详细讲解如何使用Curl库在C++中获取网络时间。 首先,你需要在你的项目中包含Curl库。你可以从Curl的官方网站下载源代码并编译,然后将其库文件添加到你的项目路径中。在Windows上,这可能涉及设置包含目录...

    PHP中CURL方法curl_setopt()函数的一些参数.pdf

    在PHP中,`curl_setopt()`函数是用于设置cURL会话的各种选项的,它允许开发者自定义cURL请求的行为。这个函数的语法是`curl_setopt($ch, $option, $value)`,其中 `$ch` 是cURL句柄,`$option` 是要设置的选项,而`$...

    PHP curl采集

    curl_setopt($ch, CURLOPT_URL, $url); // 设置 Curl 目标 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // Curl 请求有返回的值 curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); // 设置抓取超时时间 ...

    PHP中CURL方法curl_setopt()函数的一些参数.doc

    `curl_setopt()`函数是PHP中用于配置cURL会话的关键函数。它允许开发者根据需要定制cURL请求的各种属性,以适应不同的HTTP、FTP等网络通信需求。以下是对该函数一些重要参数的详细解释: 1. **CURLOPT_INFILESIZE**...

    PHP中curl_setopt函数用法实例分析

    `curl_setopt`函数是PHP中处理HTTP请求的强大工具,结合多种选项,开发者可以模拟各种网络交互,包括登录、API调用、文件上传等。理解并熟练使用这些选项,能够极大地提高Web应用程序的功能和灵活性。在实际开发中,...

    qt5使用curl实现文件下载的示例程序

    在Qt5项目中使用cURL,首先需要将cURL库添加到项目中。这通常涉及到配置项目的.pro文件,指定cURL库的位置,并确保编译时能够正确链接。 2. **创建cURL对象**: 在代码中,需要创建一个cURL对象,通过设置选项...

    Curl.zip_C++ curl_DEMO_c++ curl_curl_curl c++

    - 使用`curl_easy_setopt()`函数设置会话的各种选项,如URL(`CURLOPT_URL`)、HTTP方法(`CURLOPT_CUSTOMREQUEST`)、超时时间(`CURLOPT_TIMEOUT`)等。 - 调用`curl_easy_perform()`执行请求。 - 最后,记得...

    Cocos2d-3.10 使用Curl异步下载文件(断点续传)

    在Cocos2d-x游戏引擎中,Curl库是一个强大的工具,用于实现网络通信,特别是进行异步文件下载。在3.10版本中,Cocos2d-x提供了对Curl的支持,允许开发者在游戏运行时后台下载资源,提高用户体验,并且支持断点续传...

    PHP后端curl进度条_becomeyy9_php后端_php后端curl上传进度条_

    在PHP中,我们可以使用`curl_init()`函数初始化一个cURL会话,`curl_setopt()`设置各种选项,如URL、请求类型、头部信息等,最后使用`curl_exec()`执行请求。对于文件上传或下载,我们可以利用`CURLOPT_READFUNCTION...

    PHP中使用cURL操作网络资源1

    然后,使用`curl_init()`函数初始化cURL会话,`curl_setopt()`函数设置URL,`curl_exec()`执行请求,最后关闭cURL会话并处理返回的HTML内容。例如,我们可以抓取百度首页的内容,并将其中的"百度"替换为"搜索引擎"。...

    CURL详解 资料.doc

    CURL详解:深入理解PHP中的CURL函数库 CURL,即Client URL Library,是一个用于在各种协议下进行文件传输的命令行工具和库。在PHP中,CURL函数库提供了一组强大的函数,用于执行HTTP和其他网络协议的请求。通过CURL...

    PHP 中CURL相关涵数详解

    ### PHP中CURL相关函数详解 #### 一、概述 CURL(Client URL)是PHP中用于处理HTTP请求的强大库之一,它支持多种协议(如HTTP、HTTPS、FTP等),并能够实现各种复杂的网络交互需求。本文将详细介绍PHP中与CURL相关...

    PHP中的curl使用参数详解

    在PHP中,cURL库是一个强大的工具,用于执行HTTP、FTP、SMTP等协议的请求。cURL库通过`curl_setopt()`函数允许开发者设置各种选项来定制请求行为。下面是对`curl_setopt()`函数常用参数的详细解释: 1. **CURLOPT_...

Global site tag (gtag.js) - Google Analytics