php curl 采集 源码?phpyun采集

源码大全 编辑:速达网络 日期:2024-10-31 12:47:34 3人浏览

php curl 采集 源码?phpyun采集

数据已经成为企业竞争的重要资源。如何高效、准确地采集网络数据,成为众多企业和开发者关注的焦点。PHP CURL 采集源码作为一种强大的数据采集工具,在数据采集领域发挥着重要作用。本文将详细介绍 PHP CURL 采集源码的原理、应用场景以及在实际开发中的注意事项。

一、PHP CURL 简介

PHP CURL 是一款开源的客户端/服务器端工具,用于传输数据。它支持多种协议,如 HTTP、HTTPS、FTP、FTPS、SCP、SFTP 等。PHP CURL 可以方便地实现数据的发送、接收、解析等功能,是 PHP 开发者进行数据采集的重要工具。

二、PHP CURL 采集源码原理

PHP CURL 采集源码主要基于以下原理:

1. 创建 CURL 会话:通过调用 curl_init() 函数创建一个 CURL 会话。

2. 设置 CURL 选项:通过调用 curl_setopt() 函数设置 CURL 会话的选项,如 URL、请求方法、请求头、用户代理等。

3. 发送请求:通过调用 curl_exec() 函数发送请求,获取响应数据。

4. 获取响应数据:通过调用 curl_getinfo() 函数获取响应信息,如响应状态码、响应时间等。

5. 关闭 CURL 会话:通过调用 curl_close() 函数关闭 CURL 会话。

三、PHP CURL 采集源码应用场景

1. 网络爬虫:利用 PHP CURL 采集源码可以轻松实现网站内容的抓取,如新闻、论坛、博客等。

2. 数据接口调用:通过 PHP CURL 采集源码,可以方便地调用第三方数据接口,获取所需数据。

3. 网络监控:利用 PHP CURL 采集源码,可以实现对网络资源的实时监控,如网站访问量、服务器状态等。

4. 数据分析:通过 PHP CURL 采集源码,可以收集大量数据,为后续的数据分析提供数据基础。

四、PHP CURL 采集源码注意事项

1. 遵守网站robots.txt:在进行数据采集时,应遵守网站的 robots.txt 规则,避免对网站造成不必要的压力。

2. 请求频率控制:合理控制请求频率,避免对目标网站造成过大压力。

3. 请求参数处理:在发送请求时,对请求参数进行加密或脱敏处理,确保数据安全。

4. 异常处理:在数据采集过程中,应妥善处理异常情况,如网络中断、请求超时等。

5. 性能优化:针对大规模数据采集任务,可对 PHP CURL 采集源码进行性能优化,提高采集效率。

PHP CURL 采集源码作为一种高效的数据采集工具,在数据采集领域具有广泛的应用。通过本文的介绍,相信读者对 PHP CURL 采集源码有了更深入的了解。在实际开发过程中,合理运用 PHP CURL 采集源码,可以有效提高数据采集效率,为企业和开发者提供有力支持。

参考文献:

[1] PHP Manual. (2021). curl_init. https://www.php.net/manual/en/function.curl-init.php

[2] PHP Manual. (2021). curl_setopt. https://www.php.net/manual/en/function.curl-setopt.php

[3] PHP Manual. (2021). curl_exec. https://www.php.net/manual/en/function.curl-exec.php

[4] PHP Manual. (2021). curl_getinfo. https://www.php.net/manual/en/function.curl-getinfo.php

[5] PHP Manual. (2021). curl_close. https://www.php.net/manual/en/function.curl-close.php

万能采集网站php源码

php获取网页源码内容有哪些办法

可以参考以下几种方法:

方法一:file_get_contents获取

spanstyle="white-space:pre"?/span$url="";

spanstyle="white-space:pre"?/span$fh=file_get_contents

('');spanstyle="white-space:pre"?/spanecho$fh;

方法二:使用fopen获取网页源代码

spanstyle="white-space:pre"?/span$url="";

spanstyle="white-space:pre"?/span$handle=fopen($url,"rb");

spanstyle="white-space:pre"?/span$contents="";

spanstyle="white-space:pre"?/spanwhile(!feof($handle)){

spanstyle="white-space:pre"??/span$contents.=fread($handle,8192);

spanstyle="white-space:pre"?/span}

spanstyle="white-space:pre"?/spanfclose($handle);

spanstyle="white-space:pre"?/spanecho$contents;//输出获取到得内容。

方法三:使用CURL获取网页源代码

$url="";

$UserAgent='Mozilla/4.0(compatible;MSIE7.0;WindowsNT6.0;SLCC1;.NETCLR2.0.50727;.NETCLR3.0.04506;.NETCLR3.5.21022;.NETCLR1.0.3705;.NETCLR1.1.4322)';

$curl=curl_init();?//创建一个新的CURL资源

curl_setopt($curl,CURLOPT_URL,$url);?//设置URL和相应的选项

curl_setopt($curl,CURLOPT_HEADER,0);?//0表示不输出Header,1表示输出

curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);?//设定是否显示头信息,1显示,0不显示。//如果成功只将结果返回,不自动输出任何内容。如果失败返回FALSE

curl_setopt($curl,CURLOPT_SSL_VERIFYPEER,false);

curl_setopt($curl,CURLOPT_SSL_VERIFYHOST,false);

curl_setopt($curl,CURLOPT_ENCODING,'');?//设置编码格式,为空表示支持所有格式的编码

//header中“Accept-Encoding:”部分的内容,支持的编码格式为:"identity","deflate","gzip"。

curl_setopt($curl,CURLOPT_USERAGENT,$UserAgent);

curl_setopt($curl,CURLOPT_FOLLOWLOCATION,1);

//设置这个选项为一个非零值(象“Location:“)的头,服务器会把它当做HTTP头的一部分发送(注意这是递归的,PHP将发送形如“Location:“的头)。

$data=curl_exec($curl);

echo$data;

//echocurl_errno($curl);//返回0时表示程序执行成功

curl_close($curl);?//关闭cURL资源,并释放系统资源

拓展资料

PHP(外文名:PHP:HypertextPreprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。

用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。

参考资料:PHP(超文本预处理器)-百度百科

求带登录的网站采集php源码或思路

获取链接的数据以后,加个判断:如果需要登陆,则使用php的curl函数来模拟post;不需要登陆则直接采集。

高分!求高手网站信息采集源代码或编程思路

思路:

RSS采集

相似算法

聚类

分类

(一)原理

小偷程序实际上是通过了XML中的XMLHTTP组件调用其它网站上的网页。比如新闻小偷程序,很多都是调用了sina的新闻网页,并且对其中的html进行了一些替换,同时对广告也进行了过滤。用小偷程序的优点有:无须维护网站,因为小偷程序中的数据来自其他网站,它将随着该网站的更新而更新;可以节省服务器资源,一般小偷程序就几个文件,所有网页内容都是来自其他网站。缺点有:不稳定,如果目标网站出错,程序也会出错,而且,如果目标网站进行升级维护,那么小偷程序也要进行相应修改;速度,因为是远程调用,速度和在本地服务器上读取数据比起来,肯定要慢一些。

(二)事例

以下是代码片段:

下面就XMLHTTP在ASP中的应用做个简单说明

〈%

’常用函数

’1、输入url目标网页地址,返回值getHTTPPage是目标网页的html代码

functiongetHTTPPage(url)

dimHttp

setHttp=server.createobject("MSXML2.XMLHTTP")

Http.open"GET",url,false

Http.send()

ifHttp.readystate〈〉4then

exitfunction

endif

getHTTPPage=bytesToBSTR(Http.responseBody,"GB2312")

sethttp=nothing

iferr.number〈〉0thenerr.Clear

endfunction

’2、转换乱玛,直接用xmlhttp调用有中文字符的网页得到的将是乱玛,可以通过adodb.stream组件进行转换

FunctionBytesToBstr(body,Cset)

dimobjstream

setobjstream=Server.CreateObject("adodb.stream")

objstream.Type=1

objstream.Mode=3

objstream.Open

objstream.Writebody

objstream.Position=0

objstream.Type=2

objstream.Charset=Cset

BytesToBstr=objstream.ReadText

objstream.Close

setobjstream=nothing

EndFunction

’下面试着调用的html内容

DimUrl,Html

Url=""

Html=getHTTPPage(Url)

Response.writeHtml

%〉ASP小偷入门教程.....附QQ天气小偷源代码

要做一名好的小偷有点难度:P,灵活运用XMLHTTP组件,你也可以做“小偷”

这里所说的“小偷”指的是在ASP中运用XML中的XMLHTTP组件提供的强大功能,把远程网站上的数据(图片,网页及其他文件)抓取到本地,经过各种处理后显示到页面上或者存储进数据库的一类程序。你可以通过这种小偷程序,完成过去一些似乎完全不可能实现的任务,比如说把某个站的页面偷梁换柱后变成自己的页面,或者把某个站的一些数据(文章,图片)保存到本地数据库中加以利用。“小偷”的优点有:无须维护网站,因为小偷程序中的数据来自其他网站,它将随着该网站的更新而更新;可以节省大量的服务器资源,一般小偷程序就几个文件,所有网页内容都是来自其他网站。缺点在于:不稳定,如果目标网站出错,程序也会出错,而且,如果目标网站进行升级维护,那么小偷程序也要进行相应修改;速度,因为是远程调用,速度和在本地服务器上读取数据比起来,肯定要慢一些。怎么样,听起来很神奇吧?我们现在就开始来学习一些“小偷”程序的入门知识吧!

我们拿个简单点的东西来研究一下吧,QQ网站上的天气预报程序

程序演示地址:

源码下载:

代码如下:

以下是代码片段:

〈%

OnErrorResumeNext

Server.ScriptTimeOut=9999999

FunctiongetHTTPPage(Path)

t=GetBody(Path)

getHTTPPage=BytesToBstr(t,"GB2312")

Endfunction'首先,进行小偷程序的一些初始化设置,以上代码的作用分别是忽略掉所有非致命性错误,把小偷程序的运行超时时间设置得很长(这样不会出现运行超时的错误),转换原来默认的UTF-8编码转换成GB2312编码,否则直接用XMLHTTP组件调用有中文字符的网页得到的将是乱码。

以下是代码片段:

FunctionGetBody(url)

onerrorresumenext

SetRetrieval=CreateObject("Microsoft.XMLHTTP")

WithRetrieval

.Open"Get",url,False,"",""

.Send

GetBody=.ResponseBody

EndWith

SetRetrieval=Nothing

EndFunction

’然后调用XMLHTTP组件创建一个对象并进行初始化设置。

FunctionBytesToBstr(body,Cset)

dimobjstream

setobjstream=Server.CreateObject("adodb.stream")

objstream.Type=1

objstream.Mode=3

objstream.Open

objstream.Writebody

objstream.Position=0

objstream.Type=2

objstream.Charset=Cset

BytesToBstr=objstream.ReadText

objstream.Close

setobjstream=nothing

EndFunction

FunctionNewstring(wstr,strng)

Newstring=Instr(lcase(wstr),lcase(strng))

ifNewstring〈=0thenNewstring=Len(wstr)

EndFunction

’处理抓取回来的数据需要调用adodb.stream组件并进行初始化设置。%〉

’以下即为页面显示部分

〈%

Dimwstr,str,url,start,over,city

’定义一些需要使用到的变量

city=Request.QueryString("id")

’程序传回的ID变量(即用户选择的城市)赋给id

url=""city""

’这里设置需要抓取的页面地址,当然你也可以直接指定某个地址而不使用变量

wstr=getHTTPPage(url)'以下是代码片段:

获取指定页面的全部数据

start=Newstring(wstr,"")

’这里设置需要处理的数据的头部,这个变量应视不同情况而设置,具体内容可以通过查看需要抓取的页面的源代码来确定。因为在这个程序里我们需要抓取整个页面,所以设置为页面全部抓取。注意,设置的内容必须是页面内容唯一的,不可以重复。

over=Newstring(wstr,"")

’和start相对应的就是需要处理的数据的尾部,同样的,设置的内容必须是页面中唯一的。

body=mid(wstr,start,over-start)

’设置显示页面的范围

’下面就是动用乾坤挪移**的时候了,通过replace可以用一些字符替换掉数据中指定的字符。

body=replace(body,"skin1","天气预报")

body=replace(body,"","tianqi.asp?id")

’本程序中已经完成了替换的工作,如果有其他需要的话可以继续进行类似的替换操作。

response.writebody

%〉替换完需要修改的内容后,就可以把修改的内容显示在页面上了。至此程序结束

程序使用方法及结果:把上述代码去掉说明部分后保存为tianqi.asp,上传到支持ASP和XML的空间下,在浏览器中运行即可。你可以在在这个程序的基础上进行进一步的界面美化或者程序优化。

以上只是一些关于XMLHTTP组件的初级应用,实际上它还能实现的功能还有很多,比如说保存远程图片到本地服务器上,配合adodb.stream组件可以把获取来的数据保存进数据库。小偷的作用和使用范围都很广。但是不可以拿来做违法的事哦!

也许还有人要问了,这种“小偷”程序难道只是ASP的专利吗?非也,PHP通过fopen函数一样可以实现同样的效果,由于PHP本身的各种特点,写出来的小偷程序和ASP相比,在体积和执行效率上都有着明显的优势,但限于篇幅,这里就不一一说明了。

谁也免费的PHP小说网站源码?带自动采集的那种!谁说的能用我给加100分!!

现在小说系统都加密了,建议用dedecms建站,高负载+全站静态

dedecms的采集也很厉害,不过你要慢慢写采集规则

其实其他的小说系统不一定有dedecms好用

你用心用dedecms打造一个自己的小说站,回报绝对超出你的想象

php+curl获取的表单源码,以字符串转换为数组

function sendcheck($url,$code)

{

global $logger;

$ch = curl_init();

if(!$ch)return -1; //设置适当的参数

curl_setopt($ch, CURLOPT_URL , $url);//连接

if(!curl_setopt($ch, CURLOPT_HEADER, 0)) return -2; //发送,设置curl_exec执行结果返回,成功返回获得内容,否则false

curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); //返回值为空

if(!curl_setopt($ch,CURLOPT_TIMEOUT ,30))return -3; //执行curl操作最大时间为 10 s

if(!curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,30))return -4 ; //curl对外连接大时间为 10 s

$result = curl_exec($ch); //访问资源;

//服务器无响应或者网络连接错误处理,重新发送请求信息,最多10次,每次 10 s 间隔

for($i =0 ; $i <= 9; $i++ ){

if(!$result){ //上一次未得到数据

$result = curl_exec($ch); //下一次的数据发送;

}else{

$logger->info("已成功通知");

break;

}

}

if(!$result){

$logger->info("通知失败");

}

curl_close($ch); //关闭curl资源

}

php curl 401时怎么获取body

PHP curl可以从服务器端模拟一个http请求,例如抓取网页、模拟登陆等。根据选项设置,可以在curl_exec的返回结果中获取到响应头和body,但这没有响应的状态吗。想要获取状态码,需要在执行curl_exec后再通过curl_getinfo来获取。例如:

[php] view plain copy 在CODE上查看代码片派生到我的代码片

$ch = curl_init ();

curl_setopt($ch, CURLOPT_URL, ';);

curl_setopt($ch, CURLOPT_TIMEOUT, 200);

curl_setopt($ch, CURLOPT_HEADER, FALSE);

curl_setopt($ch, CURLOPT_NOBODY, FALSE);

#curl_setopt( $ch, CURLOPT_POSTFIELDS, "username=".$username."&password=".$password );

curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, FALSE);

curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');

curl_exec($ch);

$httpCode = curl_getinfo($ch,CURLINFO_HTTP_CODE);

另外curl_getinfo还可以获取很多其他信息,具体请参考: 。

[html] view plain copy 在CODE上查看代码片派生到我的代码片

下列选项的值将被作为长整形使用(在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。用来获取需要登录的页面的例子,当前做法是每次或许都登录一次,有需要的人再做改进了. PHP curl可以从服务器端模拟一个http请求,例如抓取网页、模拟登陆等。根据选项设置,可以在curl_exec的返回结果中获取到响应头和body,但这没有响应的状态吗。想要获取状态码,需要在执行curl_exec后再通过curl_getinfo来获取。例如:

[php] view plain copy 在CODE上查看代码片派生到我的代码片

$ch = curl_init ();

curl_setopt($ch, CURLOPT_URL, ';);

curl_setopt($ch, CURLOPT_TIMEOUT, 200);

curl_setopt($ch, CURLOPT_HEADER, FALSE);

curl_setopt($ch, CURLOPT_NOBODY, FALSE);

#curl_setopt( $ch, CURLOPT_POSTFIELDS, "username=".$username."&password=".$password );

curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, FALSE);

curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');

curl_exec($ch);

$httpCode = curl_getinfo($ch,CURLINFO_HTTP_CODE);

另外curl_getinfo还可以获取很多其他信息,具体请参考: 。

[html] view plain copy 在CODE上查看代码片派生到我的代码片

下列选项的值将被作为长整形使用(在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。用来获取需要登录的页面的例子,当前做法是每次或许都登录一次,有需要的人再做改进了.

分享到

文章已关闭评论!