《PHP實(shí)例:php實(shí)現(xiàn)的http請(qǐng)求封裝示例》要點(diǎn):
本文介紹了PHP實(shí)例:php實(shí)現(xiàn)的http請(qǐng)求封裝示例,希望對(duì)您有用。如果有疑問,可以聯(lián)系我們。
PHP編程本文實(shí)例講述了php的http請(qǐng)求封裝.分享給大家供大家參考,具體如下:
PHP編程
/**
* 發(fā)送HTTP請(qǐng)求方法,目前只支持CURL發(fā)送請(qǐng)求
* @param string $url 請(qǐng)求URL
* @param array $params 請(qǐng)求參數(shù)
* @param string $method 請(qǐng)求方法GET/POST
* @return array $data 響應(yīng)數(shù)據(jù)
*/
protected function http($url, $params, $method = 'GET', $header = array(), $multi = false) {
$opts = array(CURLOPT_TIMEOUT => 30, CURLOPT_RETURNTRANSFER => 1, CURLOPT_SSL_VERIFYPEER => false, CURLOPT_SSL_VERIFYHOST => false, CURLOPT_HTTPHEADER => $header);
/* 根據(jù)請(qǐng)求類型設(shè)置特定參數(shù) */
switch(strtoupper($method)) {
case 'GET' :
$opts[CURLOPT_URL] = $url . '&' . http_build_query($params);
dump($opts[CURLOPT_URL]);
break;
case 'POST' :
//判斷是否傳輸文件
$params = $multi ? $params : http_build_query($params);
$opts[CURLOPT_URL] = $url;
dump($opts[CURLOPT_URL]);
$opts[CURLOPT_POST] = 1;
$opts[CURLOPT_POSTFIELDS] = $params;
break;
default :
throw new Exception('不支持的請(qǐng)求方式!');
}
/* 初始化并執(zhí)行curl請(qǐng)求 */
$ch = curl_init();
curl_setopt_array($ch, $opts);
$data = curl_exec($ch);
$error = curl_error($ch);
curl_close($ch);
if ($error)
throw new Exception('請(qǐng)求發(fā)生錯(cuò)誤:' . $error);
return $data;
}
PHP編程更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php curl用法總結(jié)》、《php socket用法總結(jié)》、《PHP網(wǎng)絡(luò)編程技巧總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫(kù)操作入門教程》及《php常見數(shù)據(jù)庫(kù)操作技巧匯總》
PHP編程希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助.
轉(zhuǎn)載請(qǐng)注明本頁(yè)網(wǎng)址:
http://www.snjht.com/jiaocheng/2856.html