欧美三区四区_av先锋影音资源站_亚洲第一论坛sis_影音先锋2020色资源网_亚洲精品社区_在线免费观看av网站_国产一区二区伦理_亚洲欧美视频一区二区_99视频精品全部免费在线_精精国产xxxx视频在线

CURL的學(xué)習(xí)和應(yīng)用(附多線程實(shí)現(xiàn))_PHP教程

編輯Tag賺U幣

推薦:php魔術(shù)方法與魔術(shù)變量、內(nèi)置方法與內(nèi)置變量的深入分析
本篇文章是對php魔術(shù)方法與魔術(shù)變量、內(nèi)置方法與內(nèi)置變量進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下

curl安裝:

windows下面的安裝
:修改php.ini文件的設(shè)置,找到php_curl.dll
//取消下在的注釋extension=php_curl.dll
linux下面安裝:

復(fù)制代碼 代碼如下:m.ghpqjb.com

# wget http://curl.haxx.se/download/curl-7.17.1.tar.gz
# tar zxvf curl-7.17.1.tar.gz //解壓
#cd curl-7.17.1
# ./configure –prefix=/usr/local/curl
# make
# make install


這是安裝php之前安裝的方法.
***************************phpinf查看是否加載成功!
使用curl的POST數(shù)據(jù)飛信接口
用curl 寫了飛信接口吧,網(wǎng)上有很多,這里只是做個測試
復(fù)制代碼 代碼如下:m.ghpqjb.com

$username = 13800138000;
$password = 123456;
$sendto = 13912345678;
$message = "測試一個試試看!";
$curlPost = 'username='.urlencode($username).'&password='.urlencode($password).'&sendto='.urlencode($sendto).'&message='.urlencode($message).'';
$ch = curl_init();//初始化curl
curl_setopt($ch,CURLOPT_URL,'http://sms.api.bz/fetion.php');//抓取指定網(wǎng)頁
curl_setopt($ch, CURLOPT_HEADER, 0);//設(shè)置header
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//要求結(jié)果為字符串且輸出到屏幕上
curl_setopt($ch, CURLOPT_POST, 1);//post提交方式
curl_setopt($ch, CURLOPT_POSTFIELDS, $curlPost);
$data = curl_exec($ch);//運(yùn)行curl
curl_close($ch);
print_r($data);//輸出結(jié)果


返回的結(jié)果是:短信已提交到發(fā)送隊(duì)列!
飛信接口的地址是http://sms.api.bz/
飛信接口模式:
http://sms.api.bz/fetion.php?username=您的移動飛信登錄手機(jī)號
&password=您的移動飛信登錄密碼
&sendto=接收短信的飛信好友手機(jī)號
&message=短信內(nèi)容
格式:http://sms.api.bz/fetion.php?username=13800138000&password=123456&sendto=13912345678&message=短信內(nèi)容
注意要保持utf-8格式的,這點(diǎn)我犯錯了

總結(jié)一下使用curl方法:

初始化curl

使用curl_setopt設(shè)置目標(biāo)url,和其他選項(xiàng),這些選項(xiàng)方法詳細(xì)參考:

curl_exec,執(zhí)行curl

執(zhí)行后,關(guān)閉curl
最后一步就是輸出
一個最要的curl函數(shù):curl_getinfo
curl_getinfo ( resource $ch [, int $opt = 0 ] )

復(fù)制代碼 代碼如下:m.ghpqjb.com

<?php
/*curl實(shí)例
*/
$curl = curl_init();
// 設(shè)置你需要抓取的URL
curl_setopt($curl, CURLOPT_URL, 'http://www.baidu.com');
// 設(shè)置header
curl_setopt($curl, CURLOPT_HEADER, 0);
// 設(shè)置cURL 參數(shù),要求結(jié)果保存到字符串中還是輸出到屏幕上。
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
// 運(yùn)行cURL,請求網(wǎng)頁
$data = curl_exec($curl);
if($data === false){
echo curl_error($curl);exit;
}
$info = curl_getinfo($curl);
// 關(guān)閉URL請求
curl_close($curl);

// 顯示獲得的數(shù)據(jù)
var_dump($info);
var_dump($data);



可以返回:

URLINFO_EFFECTIVE_URL – 最后一個有效的URL地址
CURLINFO_HTTP_CODE – 最后一個收到的HTTP代碼
CURLINFO_FILETIME – 遠(yuǎn)程獲取文檔的時間,如果無法獲取,則返回值為“-1”
CURLINFO_TOTAL_TIME – 最后一次傳輸所消耗的時間
CURLINFO_NAMELOOKUP_TIME – 名稱解析所消耗的時間
CURLINFO_CONNECT_TIME – 建立連接所消耗的時間
CURLINFO_PRETRANSFER_TIME – 從建立連接到準(zhǔn)備傳輸所使用的時間
CURLINFO_STARTTRANSFER_TIME – 從建立連接到傳輸開始所使用的時間
CURLINFO_REDIRECT_TIME – 在事務(wù)傳輸開始前重定向所使用的時間
CURLINFO_SIZE_UPLOAD – 上傳數(shù)據(jù)量的總值
CURLINFO_SIZE_DOWNLOAD – 下載數(shù)據(jù)量的總值
CURLINFO_SPEED_DOWNLOAD – 平均下載速度
CURLINFO_SPEED_UPLOAD – 平均上傳速度
CURLINFO_HEADER_SIZE – header部分的大小
CURLINFO_HEADER_OUT – 發(fā)送請求的字符串
CURLINFO_REQUEST_SIZE – 在HTTP請求中有問題的請求的大小
CURLINFO_SSL_VERIFYRESULT – 通過設(shè)置CURLOPT_SSL_VERIFYPEER返回的SSL證書驗(yàn)證請求的結(jié)果
CURLINFO_CONTENT_LENGTH_DOWNLOAD – 從Content-Length: field中讀取的下載內(nèi)容長度
CURLINFO_CONTENT_LENGTH_UPLOAD – 上傳內(nèi)容大小的說明
CURLINFO_CONTENT_TYPE – 下載內(nèi)容的Content-Type:值,NULL表示服務(wù)器沒有發(fā)送有效的Content-Type: header

使用curl實(shí)現(xiàn)多線程

curl一般用來抓取網(wǎng)頁,第二種就是get或者post數(shù)據(jù),第三種應(yīng)用就是實(shí)現(xiàn)PHP的多線程任務(wù)
下面來實(shí)現(xiàn)多線程的

復(fù)制代碼 代碼如下:m.ghpqjb.com

<?php
/*
curl 多線程抓取
*/
/**
* curl 多線程
*
* @param array $array 并行網(wǎng)址
* @param int $timeout 超時時間
* @return array
*/
function Curl_http($array,$timeout){
$res = array();
$mh = curl_multi_init();//創(chuàng)建多個curl語柄
$startime = getmicrotime();
foreach($array as $k=>$url){
$conn[$k]=curl_init($url);

curl_setopt($conn[$k], CURLOPT_TIMEOUT, $timeout);//設(shè)置超時時間
curl_setopt($conn[$k], CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)');
curl_setopt($conn[$k], CURLOPT_MAXREDIRS, 7);//HTTp定向級別
curl_setopt($conn[$k], CURLOPT_HEADER, 0);//這里不要header,加塊效率
curl_setopt($conn[$k], CURLOPT_FOLLOWLOCATION, 1); // 302 redirect
curl_setopt($conn[$k],CURLOPT_RETURNTRANSFER,1);
curl_multi_add_handle ($mh,$conn[$k]);
}
//防止死循環(huán)耗死cpu 這段是根據(jù)網(wǎng)上的寫法
do {
$mrc = curl_multi_exec($mh,$active);//當(dāng)無數(shù)據(jù),active=true
} while ($mrc == CURLM_CALL_MULTI_PERFORM);//當(dāng)正在接受數(shù)據(jù)時
while ($active and $mrc == CURLM_OK) {//當(dāng)無數(shù)據(jù)時或請求暫停時,active=true
if (curl_multi_select($mh) != -1) {
do {
$mrc = curl_multi_exec($mh, $active);
} while ($mrc == CURLM_CALL_MULTI_PERFORM);
}
}

foreach ($array as $k => $url) {
curl_error($conn[$k]);
$res[$k]=curl_multi_getcontent($conn[$k]);//獲得返回信息
$header[$k]=curl_getinfo($conn[$k]);//返回頭信息
curl_close($conn[$k]);//關(guān)閉語柄
curl_multi_remove_handle($mh , $conn[$k]); //釋放資源
}

curl_multi_close($mh);
$endtime = getmicrotime();
$diff_time = $endtime - $startime;

return array('diff_time'=>$diff_time,
'return'=>$res,
'header'=>$header
);

}
//計算當(dāng)前時間
function getmicrotime() {
list($usec, $sec) = explode(" ",microtime());
return ((float)$usec + (float)$sec);
}

//測試一下,curl 三個網(wǎng)址
$array = array(
"http://www.weibo.com/",
"http://www.renren.com/",
"http://www.qq.com/"
);
$data = Curl_http($array,'10');//調(diào)用
var_dump($data);//輸出

?>


關(guān)于do while的那段解釋:

因?yàn)?active要等全部url數(shù)據(jù)接受完畢才變成false,所以這里用到了curl_multi_exec的返回值判斷是否還有數(shù)據(jù),
當(dāng)有數(shù) 據(jù)的時候就不停調(diào)用curl_multi_exec,暫時沒有數(shù)據(jù)就進(jìn)入select階段,新數(shù)據(jù)一來就可以被喚醒繼續(xù)執(zhí)行。
這里的好處就是CPU的無謂 消耗沒有了。更詳細(xì)的說明:http://hi.baidu.com/%D4%C2%D2%B9%C4%FD%ED%F8/blog/item/9dfcf4fbe6b84374024f563d.html

這個多線程的寫法步驟:
第一步:調(diào)用curl_multi_init
第二步:循環(huán)調(diào)用curl_multi_add_handle
這一步需要注意的是,curl_multi_add_handle的第二個參數(shù)是由curl_init而來的子handle。
第三步:持續(xù)調(diào)用curl_multi_exec
第四步:根據(jù)需要循環(huán)調(diào)用curl_multi_getcontent獲取結(jié)果
第五步:調(diào)用curl_multi_remove_handle,并為每個字handle調(diào)用curl_close
第六步:調(diào)用curl_multi_close
多線程的測試效果圖:

總結(jié):36個http請求,從執(zhí)行的是時間順序上來看,三個網(wǎng)站的ip交叉,說明是同時并發(fā)的!
—————————————————————————
linux命令下的curl
幾種常見的使用方式:
下載作用:
直接下載 相當(dāng)于wget
curl -o 1.jpg http://cgi2.tky.3web.ne.jp/~zzh/screen1.JPG
批量下載screen1.JPG–screen10.JPG
curl -O http://cgi2.tky.3web.ne.jp/~zzh/screen[1-10].JPG
斷點(diǎn)下載
curl -c -O http://cgi2.tky.3wb.ne.jp/~zzh/screen1.JPG


反向代理功能
curl -x 123.45.67.89:1080 -o page.html http://www.yahoo.com
顯示頭文件
curl -I www.sina.com

分享:PHP flush()與ob_flush()的區(qū)別詳解
本篇文章是對PHP中的flush函數(shù)與ob_flush函數(shù)的區(qū)別進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下

來源:模板無憂//所屬分類:PHP教程/更新時間:2013-06-04
相關(guān)PHP教程
精品少妇人妻一区二区黑料社区| 91亚洲va在线va天堂va国| 日韩精品视频在线观看视频| 国产网友自拍视频| 国产精品中文字幕亚洲欧美| 国产精品久久网站| 欧美激情视频网站| 91精品91久久久中77777老牛| 天堂网一区二区| 伊人久久大香线蕉综合四虎小说| 亚洲成av人片在线观看无码| 国产精品96久久久久久| 亚洲五月激情网| 亚洲欧美色视频| 六月丁香婷婷久久| 日韩成人在线观看| 做爰高潮hd色即是空| 日本免费观看视| 欧美肥老太太性生活| 亚洲韩国精品一区| 国产精品一区二区三区免费视频| 国产大尺度视频| 成人国产一区| 97精品国产露脸对白| 久久久成人精品| 免费在线观看的av网站| www.久久伊人| 另类综合日韩欧美亚洲| 精品一区二区三区三区| 黄色一级大片免费| 亚洲一区二区激情| 视频一区二区中文字幕| 亚洲成人久久久| 综合操久久久| 成人毛片一区二区三区| 在线综合视频| 亚洲国产精品va在看黑人| 一区二区三区一级片| 中文字幕第四页| 一区二区亚洲| 日韩一区二区三区免费观看| 日韩一区不卡| 超碰中文字幕在线| 国产欧美日韩一区二区三区在线| 日韩欧美一二三区| 看全色黄大色大片| 亚洲综合精品视频| 免费美女久久99| 亚洲欧美国产精品专区久久| 国产freexxxx性播放麻豆| 国产露脸无套对白在线播放| 久久精品国产精品亚洲精品| 国产亚洲精品久久久久久牛牛| 欧美三级一级片| 熟妇人妻一区二区三区四区| 风间由美一区二区三区在线观看| 久久国产精品电影| 91亚洲一区二区| 99re8精品视频在线观看| 中文一区在线播放| 国产精品丝袜久久久久久不卡| 成人国产精品久久久网站| 国产不卡av一区二区| 欧美午夜久久久| 免费毛片一区二区三区久久久| 日韩精品在线免费视频| 亚洲欧美不卡| 一区二区中文字幕| av免费一区二区| 日韩三级不卡| 亚洲国产综合91精品麻豆| 精品一卡二卡三卡四卡日本乱码| 久久夜靖品2区| 午夜在线观看免费一区| 亚洲天堂网在线观看| 日韩av手机版| 欧美日韩中出| 五月天丁香久久| 免费日韩电影在线观看| 在线观看免费高清视频| 国产精品一区二区三区四区| 久久久之久亚州精品露出| 国产老熟女伦老熟妇露脸| 国产成人1区| 欧美高清性hdvideosex| 欧美与动交zoz0z| 亚洲欧美另类综合| 久久青草国产手机看片福利盒子| 国产精品免费视频xxxx| 青青草国产在线观看| 一本综合久久| 在线精品91av| 少妇搡bbbb搡bbb搡打电话| 日韩av网站在线免费观看| 欧美亚洲尤物久久| 免费看黄色a级片| 五月婷婷六月丁香| 国产精品麻豆网站| 国产一区二区三区四区五区在线 | 日韩欧美在线看| 一区二区日本伦理| 可以免费看毛片的网站| 国产偷v国产偷v亚洲高清| 91精品综合久久久久久五月天| 国产一级二级三级| 麻豆91在线观看| 91福利视频在线观看| 免费黄色激情视频| 妖精视频成人观看www| 日韩在线观看免费高清完整版| www.555国产精品免费| 日本道不卡免费一区| 精品国产成人系列| 五月激情婷婷在线| 色综合综合色| 亚洲成人精品久久| 国产在线观看中文字幕| 国产精品亚洲片在线播放| 欧美va亚洲va国产综合| 欧美日韩在线观看不卡| 私拍精品福利视频在线一区| 日韩欧美在线网站| 欧美黄色性生活| 日韩mv欧美mv国产网站| 日韩情涩欧美日韩视频| 一本色道久久亚洲综合精品蜜桃| 日韩大胆成人| 精品国产一区二区三区av性色 | 91沈先生在线观看| 一二三区免费视频| 波多野结衣在线一区| 成人免费自拍视频| 夜夜嗨aⅴ一区二区三区| 久久久久国产精品麻豆ai换脸 | 亚洲欧美日韩第一区| 中文字幕天堂av| 欧美永久精品| 久久精品国产综合| 粉嫩精品久久99综合一区| 国产亚洲一级| 2019中文字幕在线| 国产一级淫片a| 粉嫩av一区二区三区粉嫩| 成人午夜小视频| 中文字幕日产av| 欧美国产日韩一二三区| 日产精品一线二线三线芒果| 粉嫩一区二区| 色偷偷一区二区三区| 国产l精品国产亚洲区久久| 网曝91综合精品门事件在线| 亚洲国产精品成人精品| 国产51自产区| 亚洲视屏一区| 孩xxxx性bbbb欧美| 青青国产在线观看| 91蜜桃免费观看视频| 久久久一本精品99久久精品| 艳母动漫在线看| 黑人与娇小精品av专区| 无码播放一区二区三区| 亚洲bt欧美bt精品777| 国产视频精品免费播放| 亚洲人成人无码网www国产| 久久久久久夜| 国产精品日韩av| 国产免费的av| 亚洲一区二区五区| 欧美精品99久久| 欧美女王vk| 丝袜美腿精品国产二区 | 亚洲午夜久久久久| 免费无码毛片一区二三区| 久久综合五月婷婷| 亚洲欧美精品一区| 日本成人精品视频| 国产成人综合亚洲网站| 精品麻豆av| 日本精品网站| 91精品麻豆日日躁夜夜躁| 麻豆tv在线观看| 久久综合五月| 成人综合网网址| 黄色av免费观看| 91久久免费观看| 涩涩网站在线看| 亚洲人成久久| 国产精品极品在线| 国产免费无遮挡| 狠狠色香婷婷久久亚洲精品| 日韩高清第一页| 99精品国产在热久久下载| 国产精品久久久久久久久男| 99国产精品一区二区三区| 精品露脸国产偷人在视频| 亚洲无吗一区二区三区| 欧美色123| 国产精品国产三级国产aⅴ9色| 国产情侣一区二区| 色噜噜狠狠成人网p站| 国产不卡的av| 丝瓜av网站精品一区二区| 亚洲a级在线播放观看| 亚洲三区在线播放| 日韩一区二区在线观看视频 | 成人国产激情| 亚洲国产精品久久久久秋霞蜜臀| 日本成人免费视频| www.av亚洲| 手机在线视频你懂的| 亚洲综合小说图片| 欧美成人一二三| 日日夜夜操视频| 亚洲成人午夜影院| 亚洲妇熟xx妇色黄蜜桃| 久久国产精品亚洲77777| 亚洲一区二区三区xxx视频| 欧美黑人粗大| 亚洲缚视频在线观看| chinese全程对白| 2022国产精品视频| 久久男人资源站| 午夜精品毛片| 国产成人免费av| 秋霞av鲁丝片一区二区| 欧美一区二区三区在线视频| 欧美丰满美乳xxⅹ高潮www| 成人福利在线看| 黄色一级大片免费| 亚洲成人日韩| 国产欧美一区二区白浆黑人| 成人开心激情| 国产手机视频精品| 日韩乱码人妻无码中文字幕| 亚洲一区二区三区三| 欧美视频亚洲图片| 国产一区欧美二区| 一本久久a久久精品vr综合 | 国产精品美女久久久久av爽李琼| 1024av视频| 国产农村妇女精品一二区| 国产精品xxx在线观看www| 一区三区自拍| 欧美夫妻性生活xx| 囯产精品久久久久久| 精品999在线播放| 久久久久久国产精品视频| 一区二区三区资源| 国内av免费观看| 国产高清成人在线| 无颜之月在线看| 国产综合视频| 高清一区二区三区视频| 99re热精品视频| 欧美精品videossex性护士| 国产成人精品一区二三区四区五区| 欧美电影一区二区三区| 艳妇荡乳欲伦69影片| 樱花草国产18久久久久| 亚洲少妇一区二区| 成人av在线资源| 欧美亚洲国产成人| 久久久精品五月天| 亚洲日本无吗高清不卡| 一本精品一区二区三区| 国产精华一区| 亚洲桃色综合影院| 国产精品专区h在线观看| 电影中文字幕一区二区| 美乳少妇欧美精品| 人妻精品一区二区三区| 亚洲欧美日韩中文在线| 国产免费www| 91精品国产综合久久福利| 久久久久久久极品内射| 日韩欧美成人精品| 九九热久久免费视频| 亚洲精品国产一区二区精华液| 中国黄色片视频| 国产性色一区二区| 亚洲制服在线观看| 91美女片黄在线观看91美女| 免费看污污网站| 高清av一区二区| 狠狠爱免费视频| 国产一区视频网站| 黄色影院一级片| 国产综合色产在线精品| 成年人午夜免费视频| 美女一区二区三区| 成年人网站国产| 蜜臀a∨国产成人精品| 久久综合亚洲精品| 久久久久99| 国产av不卡一区二区| 亚洲欧美日韩国产| eeuss中文| 日韩在线一区二区| 青春草国产视频| 美女视频黄久久| 免费av观看网址| 国产精品一二三四区| 妺妺窝人体色www在线小说| 国产一区中文字幕| 国产成人手机视频| 成人午夜免费视频| 欧美成人福利在线观看| 久久综合九色综合欧美就去吻| 成人亚洲免费视频| 国产日产欧美一区二区视频| 成人欧美精品一区二区| 国产精品美女一区二区三区| 91精品国产自产| 亚洲在线视频网站| 5566中文字幕| 色婷婷av一区二区三区大白胸 | 欧美综合在线视频| 久久中文字幕无码| 777午夜精品视频在线播放| 性无码专区无码| 欧美精品一区二区三区视频 | 国产成人综合自拍| 日本黄大片一区二区三区| 久久精品这里都是精品| 久久福利小视频| 一区二区久久久久久| 国产视频精品免费| 欧美日韩亚洲综合一区二区三区| 99久热在线精品996热是什么| 欧美成人免费网站| 国产特级aaaaaa大片| 日韩在线视频网站| 黄色成人小视频| 国产精品久久久久av| 免费不卡中文字幕在线| 国产精品伊人日日| 在线观看不卡| 黄色a级片免费看| 成人精品一区二区三区中文字幕| 国产在线观看中文字幕| 亚洲色大成网站www久久九九| 人人艹在线视频| 欧美日韩精品一区二区三区| 亚洲成人av网址| 亚洲欧洲xxxx| 日韩成人影音| 国产精品电影网站| 欧美三级伦理在线| 亚洲 国产 欧美一区| 男女男精品网站| 中文字幕第88页| 国产精品久久久久久久久免费相片| 精品人伦一区二区| 欧美视频精品在线观看| 中文字幕在线视频第一页| 色噜噜亚洲精品中文字幕| 人人玩人人添人人澡欧美| 成人亲热视频网站| 欧美日一区二区三区在线观看国产免| 日本中文字幕一级片| 国产成+人+日韩+欧美+亚洲| 好吊操视频这里只有精品| 亚洲一区二区三区四区在线免费观看| 久久久久久久蜜桃| 亚洲第一页中文字幕| 天天色综合久久| 国产成人精品免高潮在线观看| 成人免费电影网址| 天天综合五月天| 成人听书哪个软件好| 国产精品无码永久免费不卡| 色婷婷av一区二区三区gif| 日本中文字幕在线观看视频| 日韩小视频在线| www.成人网| 欧美尤物一区| 国产精品羞羞答答xxdd| 男女一区二区三区| 欧美私人免费视频| av免费观看网址| 国产99久久精品一区二区| 91精品国偷自产在线电影| 国产无限制自拍| 国产精品久久久久久久裸模| 欧美成人手机视频| 亚洲精品资源在线| 精品国产第一国产综合精品| 久久精品magnetxturnbtih| 久久精品99国产精品日本| 18禁一区二区三区| 在线免费av一区| www.综合色| 国产精品久久久久久久久久三级| 午夜国产精品视频| 国产成人综合一区| 亚洲一区二区三区四区的 | 麻豆精品视频在线观看视频| japan高清日本乱xxxxx| 色婷婷国产精品| 丰满人妻一区二区三区免费视频|