WebjxCom提示:
PHP采集相关教程之一:CURL函数库.
CURLOPT_SSLCERTPASSWD:传递一个包含使用CURLOPT_SSLCERT证书必需的密码
。 CURLOPT_SSLCERTTYPE:Theformatofthecertificate.Supportedformatsare"PEM"(default),"DER",and"ENG".
CURLOPT_SSLENGINE:TheidentifierforthecryptoengineoftheprivateSSLkeyspecifiedinCURLOPT_SSLKEY.
CURLOPT_SSLENGINE_DEFAULT:Theidentifierforthecryptoengineusedforasymmetriccryptooperations.
CURLOPT_SSLKEY:ThenameofafilecontainingaprivateSSLkey.
CURLOPT_SSLKEYPASSWD:ThesecretpasswordneededtousetheprivateSSLkeyspecifiedinCURLOPT_SSLKEY.
Note:Sincethisoptioncontainsasensitivepassword,remembertokeepthe
PHPscriptitiscontainedwithinsafe.
CURLOPT_SSLKEYTYPE:ThekeytypeoftheprivateSSLkeyspecifiedinCURLOPT_SSLKEY.Supportedkeytypesare"PEM"(default),"DER",and"ENG".
CURLOPT_URL:需要获取的URL地址
,也可以在PHP的curl_init()函数中设置
。 CURLOPT_USERAGENT:在HTTP请求中包含一个”user-agent”头的字符串。
CURLOPT_USERPWD:传递一个连接中需要的用户名和密码
,格式为:“[username]:[password]”。
CURLOPT_HTTP200ALIASES:设置不再以error的形式来处理HTTP200的响应,格式为一个数组。
CURLOPT_HTTPHEADER:设置一个header中传输内容的数组。
CURLOPT_POSTQUOTE:AnarrayofFTPcommandstoexecuteontheserveraftertheFTPrequesthasbeenperformed.
CURLOPT_QUOTE:AnarrayofFTPcommandstoexecuteontheserverpriortotheFTPrequest.
CURLOPT_FILE:设置输出文件的位置,值是一个资源类型,默认为STDOUT(浏览器)。
CURLOPT_INFILE:在上传文件的时候需要读取的文件地址,值是一个资源类型。
CURLOPT_STDERR:设置一个错误输出地址,值是一个资源类型,取代默认的STDERR。
CURLOPT_WRITEHEADER:设置header部分内容的写入的文件地址,值是一个资源类型。
CURLOPT_HEADERFUNCTION:设置一个回调函数,这个函数有两个参数,第一个是curl的资源句柄,第二个是输出的header数据。header数据的输出必须依赖这个函数,返回已写入的数据大小。
CURLOPT_PASSWDFUNCTION:设置一个回调函数,有三个参数,第一个是curl的资源句柄,第二个是一个密码提示符,第三个参数是密码长度允许的最大值。返回密码的值。
CURLOPT_READFUNCTION:设置一个回调函数,有两个参数,第一个是curl的资源句柄,第二个是读取到的数据。数据读取必须依赖这个函数。返回读取数据的大小,比如0或者EOF。
CURLOPT_WRITEFUNCTION:设置一个回调函数,有两个参数,第一个是curl的资源句柄,第二个是写入的数据。数据写入必须依赖这个函数。返回精确的已写入数据的大小
curl_copy_handle()函数的作用是拷贝一个curl连接资源的所有内容和参数
PHP代码
<?php
$ch=curl_init("
http://qzone.myqq.us/");
$another=curl_copy_handle($ch);
curl_exec($another);
curl_close($another);
?>
curl_error()函数的作用是返回一个包含当前会话错误信息的字符串。
curl_errno()函数的作用是返回一个包含当前会话错误信息的数字编号。
curl_multi_init()函数的作用是初始化一个curl批处理句柄资源。
curl_multi_add_handle()函数的作用是向curl批处理会话中添加单独的curl句柄资源。curl_multi_add_handle()函数有两个参数,第一个参数表示一个curl批处理句柄资源,第二个参数表示一个单独的curl句柄资源。
curl_multi_exec()函数的作用是解析一个curl批处理句柄,curl_multi_exec()函数有两个参数,第一个参数表示一个批处理句柄资源,第二个参数是一个引用值的参数,表示剩余需要处理的单个的curl句柄资源数量。
curl_multi_remove_handle()函数表示移除curl批处理句柄资源中的某个句柄资源,curl_multi_remove_handle()函数有两个参数,第一个参数表示一个curl批处理句柄资源,第二个参数表示一个单独的curl句柄资源。
curl_multi_close()函数的作用是关闭一个批处理句柄资源。
PHP代码
<?php
$ch1=curl_init();
$ch2=curl_init();
curl_setopt($ch1,CURLOPT_URL,"
http://blog.huangchao.org/");
curl_setopt($ch1,CURLOPT_HEADER,0);
curl_setopt($ch2,CURLOPT_URL,"
http://test.huangchao.org/");
curl_setopt($ch2,CURLOPT_HEADER,0);
$mh=curl_multi_init();
curl_multi_add_handle($mh,$ch1);
curl_multi_add_handle($mh,$ch2);
do{
curl_multi_exec($mh,$flag);
}while($flag>0);
curl_multi_remove_handle($mh,$ch1);
curl_multi_remove_handle($mh,$ch2);
curl_multi_close($mh);
?>
curl_multi_getcontent()函数的作用是在设置了CURLOPT_RETURNTRANSFER的情况下,返回获取的输出的文本流。
curl_multi_info_read()函数的作用是获取当前解析的curl的相关传输信息。
curl_multi_select():GetallthesocketsassociatedwiththecURLextension,whichcanthenbe"selected"