国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > PHP > 正文

PHP中cURL的功能,開(kāi)啟方法及應(yīng)用案例

2019-11-08 03:13:08
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

php中cURL庫(kù)函數(shù)可以通過(guò)URL地址輕松獲取網(wǎng)頁(yè)內(nèi)容,實(shí)現(xiàn)網(wǎng)頁(yè)內(nèi)容抓取功能。

一、開(kāi)啟cURL庫(kù)的方法

那么如何開(kāi)啟cURL功能呢?下面是開(kāi)啟此功能的方法:1:打開(kāi)PHP.ini,然后找到extension=php_curl.dll 這句話 然后把前面的;去掉,再重啟apache服務(wù);2:如果上第1條已經(jīng)設(shè)置,還是無(wú)法檢測(cè)到curl_init,則檢查php.ini的extension_dir值是哪個(gè)目錄,以及php下的ext目錄是否有無(wú)php_curl.dll,沒(méi)有的請(qǐng)下載php_curl.dll;3:再把php目錄中的libeay32.dll,ssleay32.dll拷到c:/windows/system32里面;4:重啟下 apache;5:如果apache重啟后還是無(wú)法啟動(dòng)curl_init,那么你就得考慮PHP系統(tǒng)環(huán)境變量的配置是否出問(wèn)題;6:如果沒(méi)有配置則要加上系統(tǒng)環(huán)境變量的配置。點(diǎn)擊我的電腦,右鍵->屬性->環(huán)境變量->系統(tǒng)變量->path路徑。在path路徑上加上php的目錄路徑。例如我的(D:/Wamp2/php5.4;D:/Wamp2/php5.4/ext;),注意用分號(hào)隔開(kāi)。7:重啟系統(tǒng),重啟apache;

二、cURL庫(kù)函數(shù)的使用方法

cURL 是一個(gè)功能強(qiáng)大的PHP庫(kù),下面介紹一下這個(gè)庫(kù)的使用。

PHP中的CURL函數(shù)庫(kù)(Client URL Library Function)curl_close — 關(guān)閉一個(gè)curl會(huì)話curl_copy_handle — 拷貝一個(gè)curl連接資源的所有內(nèi)容和參數(shù)curl_errno — 返回一個(gè)包含當(dāng)前會(huì)話錯(cuò)誤信息的數(shù)字編號(hào)curl_error — 返回一個(gè)包含當(dāng)前會(huì)話錯(cuò)誤信息的字符串curl_exec — 執(zhí)行一個(gè)curl會(huì)話curl_getinfo — 獲取一個(gè)curl連接資源句柄的信息curl_init — 初始化一個(gè)curl會(huì)話curl_multi_add_handle — 向curl批處理會(huì)話中添加單獨(dú)的curl句柄資源curl_multi_close — 關(guān)閉一個(gè)批處理句柄資源curl_multi_exec — 解析一個(gè)curl批處理句柄curl_multi_getcontent — 返回獲取的輸出的文本流curl_multi_info_read — 獲取當(dāng)前解析的curl的相關(guān)傳輸信息curl_multi_init — 初始化一個(gè)curl批處理句柄資源curl_multi_remove_handle — 移除curl批處理句柄資源中的某個(gè)句柄資源curl_multi_select — Get all the sockets associated with the cURL extension, which can then be "selected"curl_setopt_array — 以數(shù)組的形式為一個(gè)curl設(shè)置會(huì)話參數(shù)curl_setopt — 為一個(gè)curl設(shè)置會(huì)話參數(shù)curl_version — 獲取curl相關(guān)的版本信息curl_init()函數(shù)的作用初始化一個(gè)curl會(huì)話,curl_init()函數(shù)唯一的一個(gè)參數(shù)是可選的,表示一個(gè)url地址。curl_exec()函數(shù)的作用是執(zhí)行一個(gè)curl會(huì)話,唯一的參數(shù)是curl_init()函數(shù)返回的句柄。curl_close()函數(shù)的作用是關(guān)閉一個(gè)curl會(huì)話,唯一的參數(shù)是curl_init()函數(shù)返回的句柄。

三、cURL庫(kù)運(yùn)用案例:

例子一: 基本例子基本例子

﹤?php// 初始化一個(gè) cURL 對(duì)象$curl = curl_init();// 設(shè)置你需要抓取的URLcurl_setopt($curl, CURLOPT_URL, 'http://www.cmx8.cn');// 設(shè)置headercurl_setopt($curl, CURLOPT_HEADER, 1);// 設(shè)置cURL 參數(shù),要求結(jié)果保存到字符串中還是輸出到屏幕上。curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);// 運(yùn)行cURL,請(qǐng)求網(wǎng)頁(yè)$data = curl_exec($curl);// 關(guān)閉URL請(qǐng)求curl_close($curl);// 顯示獲得的數(shù)據(jù)var_dump($data);?>

例子二: POST數(shù)據(jù)

sendSMS.php,其可以接受兩個(gè)表單域,一個(gè)是電話號(hào)碼,一個(gè)是短信內(nèi)容。POST數(shù)據(jù)

﹤?php$phoneNumber = '13812345678';$message = 'This message was generated by curl and php';$curlPost = 'pNUMBER=' . urlencode($phoneNumber) . '&MESSAGE=' . urlencode($message) . '&SUBMIT=Send';$ch = curl_init();curl_setopt($ch, CURLOPT_URL, 'http://www.lxvoWord');$data = curl_exec();curl_close($ch);?﹥

例子四: 模擬登錄

Curl 模擬登錄 discuz程序,適合DZ7.0,將username改成你的用戶名,userpass改成你的密碼就可以了.Curl 模擬登錄 discuz 程序<?php !extension_loaded('curl') &&die('The curl extension is notloaded.'); $discuz_url ='http://www.lxvoip.com';//論壇地址 $login_url = $discuz_url.'/logging.php?action=login';//登錄頁(yè)地址 $get_url = $discuz_url .'/my.php?item=threads';//我的帖子 $post_fields =array(); //以下兩項(xiàng)不需要修改 $post_fields['loginfield'] ='username'; $post_fields['loginsubmit'] ='true'; //用戶名和密碼,必須填寫(xiě) $post_fields['username'] ='lxvoip'; $post_fields['password'] ='88888888'; //安全提問(wèn) $post_fields['questionid'] =0; $post_fields['answer'] =''; //@todo驗(yàn)證碼 $post_fields['seccodeverify'] =''; //獲取表單FORMHASH $ch =curl_init($login_url); curl_setopt($ch, CURLOPT_HEADER,0); curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); $contents =curl_exec($ch); curl_close($ch); preg_match('/<input/s*type="hidden"/s*name="formhash"/s*value="(.*?)"/s*//>/i',$contents,$matches); if(!empty($matches)){ $formhash =$matches[1]; } else{ die('Notfound theforumhash.'); } //POST數(shù)據(jù),獲取COOKIE $cookie_file = dirname(__FILE__) .'/cookie.txt'; //$cookie_file =tempnam('/tmp'); $ch =curl_init($login_url); curl_setopt($ch, CURLOPT_HEADER,0); curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); curl_setopt($ch, CURLOPT_POST,1); curl_setopt($ch, CURLOPT_POSTFIELDS,$post_fields); curl_setopt($ch, CURLOPT_COOKIEJAR,$cookie_file); curl_exec($ch); curl_close($ch); //帶著上面得到的COOKIE獲取需要登錄后才能查看的頁(yè)面內(nèi)容 $ch =curl_init($get_url); curl_setopt($ch, CURLOPT_HEADER,0); curl_setopt($ch, CURLOPT_RETURNTRANSFER,0); curl_setopt($ch, CURLOPT_COOKIEFILE,$cookie_file); $contents =curl_exec($ch); curl_close($ch); var_dump($contents); ?>


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 满洲里市| 肥西县| 宜黄县| 乌审旗| 高陵县| 仁怀市| 册亨县| 新河县| 中西区| 临沧市| 洛南县| 苏州市| 寿宁县| 泸定县| 陈巴尔虎旗| 盘锦市| 奉节县| 宝坻区| 苏尼特左旗| 乌鲁木齐市| 普定县| 上思县| 北海市| 四川省| 余姚市| 安图县| 东乌| 毕节市| 密山市| 绥棱县| 汽车| 普定县| 卓资县| 仁化县| 旅游| 阿拉善右旗| 荔浦县| 罗源县| 瑞金市| 锦州市| 左云县|