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

首頁 > 語言 > PHP > 正文

PHP curl函數的使用示例 模擬curl請求

2024-09-04 11:49:15
字體:
來源:轉載
供稿:網友

PHP curl函數是可以模仿用戶進行訪問頁面了,下面來給各位介紹一下工作中常用的到的PHP curl函數示例.

PHP有著很好的curl機制,但是用起來總是不那么的令人滿意,因為它需要好幾步的操作和,好多難記的參數,這里我將php的curl封裝了一下,使它不那么的復雜,代碼如下:

  1. <?php 
  2. /** 
  3.  * php模擬curl請求 
  4.  * 
  5.  * @param string $url     請求的url 
  6.  * @param string $method  請求的方法, 默認POST 
  7.  * @param array  $data    請求傳遞的數據 
  8.  * @param array  $header  請求設置的頭信息 
  9.  * @param int    $head    是否打印頭信息 
  10.  * @param int    $body    是否打印body信息 
  11.  * @param int    $timeout 設置超時時間 
  12.  * 
  13.  * @return array 
  14.  */ 
  15. function curl($url,$method="POST",$data=array(),$header=array(),$head=0,$body=0,$timeout = 30) 
  16.     $ch = curl_init(); 
  17.     curl_setopt($ch, CURLOPT_URL, $url); 
  18.     if (strpos($url"https") !== false ) { 
  19.         curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); 
  20.         curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); 
  21.         if (isset($_SERVER['HTTP_USER_AGENT'])) { 
  22.             curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); 
  23.         } 
  24.     } 
  25.     if (!emptyempty($header)) { 
  26.         curl_setopt($ch, CURLOPT_HTTPHEADER, $header); 
  27.     } 
  28.     switch ($method) { 
  29.     case 'POST'
  30.         curl_setopt($ch, CURLOPT_POST, 1); 
  31.         curl_setopt($ch, CURLOPT_POSTFIELDS, $data); 
  32.         break;  //開源軟件:Vevb.com 
  33.     case 'GET'
  34.         break
  35.     case 'PUT'
  36.         curl_setopt($ch, CURLOPT_PUT, 1); 
  37.         curl_setopt($ch, CURLOPT_INFILE, ''); 
  38.         curl_setopt($ch, CURLOPT_INFILESIZE, 10); 
  39.         break
  40.     case 'DELETE'
  41.         curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "DELETE"); 
  42.         break
  43.     default
  44.         break
  45.     } 
  46.     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
  47.     curl_setopt($ch, CURLOPT_HEADER, $head); 
  48.     curl_setopt($ch, CURLOPT_NOBODY, $body); 
  49.     curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); 
  50.     $rtn = curl_exec($ch); //獲得返回 
  51.     if (curl_errno($ch)) { 
  52.         echo 'Errno'.curl_error($ch);//捕抓異常 
  53.     } 
  54.     curl_close($ch); 
  55.     return $rtn
  56. ?>

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 安塞县| 泰安市| 宁乡县| 佛坪县| 耒阳市| 澄江县| 区。| 神农架林区| 山丹县| 南阳市| 邹平县| 淳化县| 云阳县| 文山县| 长沙市| 蓝山县| 奉贤区| 交城县| 罗江县| 余姚市| 敦煌市| 武陟县| 朝阳区| 娄烦县| 宣恩县| 碌曲县| 库尔勒市| 承德县| 安达市| 连云港市| 长丰县| 霸州市| 马尔康县| 镇巴县| 邓州市| 晋宁县| 潜山县| 郎溪县| 沭阳县| 沁水县| 大连市|