最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PHP調(diào)用接口API封裝的例子

 更新時間:2019年10月11日 10:39:57   作者:開猿節(jié)流  
今天小編就為大家分享一篇PHP調(diào)用接口API封裝的例子,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

GET:

/**
 * 通過URL獲取頁面信息
 * @param $url 地址
 * @return mixed 返回頁面信息
 */
function get_url($url)
{
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL,$url); //設(shè)置訪問的url地址
  curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
  curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);//不輸出內(nèi)容
  $result = curl_exec($ch);
  curl_close ($ch);
  return $result;
}

POST:

/**
 * 模擬POST提交
 * @param string $url 地址
 * @param string $data 提交的數(shù)據(jù)
 * @return string 返回結(jié)果
 */
function post_url($url, $data) 
{
  $curl = curl_init(); // 啟動一個CURL會話
  curl_setopt($curl, CURLOPT_URL, $url); // 要訪問的地址
  curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE); // 對認(rèn)證證書來源的檢查
  curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE); // 從證書中檢查SSL加密算法是否存在
  curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)'); // 模擬用戶使用的瀏覽器
  //curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); // 使用自動跳轉(zhuǎn)
  //curl_setopt($curl, CURLOPT_AUTOREFERER, 1);  // 自動設(shè)置Referer
  curl_setopt($curl, CURLOPT_POST, 1);       // 發(fā)送一個常規(guī)的Post請求
  curl_setopt($curl, CURLOPT_POSTFIELDS, $data);  // Post提交的數(shù)據(jù)包x
  curl_setopt($curl, CURLOPT_TIMEOUT, 30);     // 設(shè)置超時限制 防止死循環(huán)
  curl_setopt($curl, CURLOPT_HEADER, 0);      // 顯示返回的Header區(qū)域內(nèi)容
  curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);  // 獲取的信息以文件流的形式返回
 
  $tmpInfo = curl_exec($curl); // 執(zhí)行操作
  if(curl_errno($curl)) 
 {
    echo 'Errno'.curl_error($curl);//捕抓異常
  }
  curl_close($curl); // 關(guān)閉CURL會話
  return $tmpInfo; // 返回數(shù)據(jù)
}

GET&&POST:

/**
 * CURL請求
 * @param $url 請求url地址
 * @param $method 請求方法 get post
 * @param null $postfields post數(shù)據(jù)數(shù)組
 * @param array $headers 請求header信息
 * @param bool|false $debug 調(diào)試開啟 默認(rèn)false
 * @return mixed
 */
function httpRequest($url, $method, $postfields = null, $headers = array(), $debug = false) {
  $method = strtoupper($method);
  $ci = curl_init();
  /* Curl settings */
  curl_setopt($ci, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0);
  curl_setopt($ci, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.2; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0");
  curl_setopt($ci, CURLOPT_CONNECTTIMEOUT, 60); /* 在發(fā)起連接前等待的時間,如果設(shè)置為0,則無限等待 */
  curl_setopt($ci, CURLOPT_TIMEOUT, 7); /* 設(shè)置cURL允許執(zhí)行的最長秒數(shù) */
  curl_setopt($ci, CURLOPT_RETURNTRANSFER, true);
  switch ($method) {
    case "POST":
      curl_setopt($ci, CURLOPT_POST, true);
      if (!empty($postfields)) {
        $tmpdatastr = is_array($postfields) ? http_build_query($postfields) : $postfields;
        curl_setopt($ci, CURLOPT_POSTFIELDS, $tmpdatastr);
      }
      break;
    default:
      curl_setopt($ci, CURLOPT_CUSTOMREQUEST, $method); /* //設(shè)置請求方式 */
      break;
  }
  $ssl = preg_match('/^https:\/\//i',$url) ? TRUE : FALSE;
  curl_setopt($ci, CURLOPT_URL, $url);
  if($ssl){
    curl_setopt($ci, CURLOPT_SSL_VERIFYPEER, FALSE); // https請求 不驗證證書和hosts
    curl_setopt($ci, CURLOPT_SSL_VERIFYHOST, FALSE); // 不從證書中檢查SSL加密算法是否存在
  }
  //curl_setopt($ci, CURLOPT_HEADER, true); /*啟用時會將頭文件的信息作為數(shù)據(jù)流輸出*/
  curl_setopt($ci, CURLOPT_FOLLOWLOCATION, 1);
  curl_setopt($ci, CURLOPT_MAXREDIRS, 2);/*指定最多的HTTP重定向的數(shù)量,這個選項是和CURLOPT_FOLLOWLOCATION一起使用的*/
  curl_setopt($ci, CURLOPT_HTTPHEADER, $headers);
  curl_setopt($ci, CURLINFO_HEADER_OUT, true);
  /*curl_setopt($ci, CURLOPT_COOKIE, $Cookiestr); * *COOKIE帶過去** */
  $response = curl_exec($ci);
  $requestinfo = curl_getinfo($ci);
  $http_code = curl_getinfo($ci, CURLINFO_HTTP_CODE);
  if ($debug) {
    echo "=====post data======\r\n";
    var_dump($postfields);
    echo "=====info===== \r\n";
    print_r($requestinfo);
    echo "=====response=====\r\n";
    print_r($response);
  }
  curl_close($ci);
  return $response;
  //return array($http_code, $response,$requestinfo);
}

實例:

$res =httpRequest($url,'post',$data);
$json_array = json_decode($res,true);
$data=$json_array['data']['admin_user_list'];
 
echo $data

以上這篇PHP調(diào)用接口API封裝的例子就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 微信支付開發(fā)維權(quán)通知實例

    微信支付開發(fā)維權(quán)通知實例

    本篇文章主要介紹微信支付開發(fā)中如何獲得維權(quán)通知,并附有代碼實例以供參考,希望能幫到微信支付開發(fā)的朋友
    2016-07-07
  • PHP封裝的一個支持HTML、JS、PHP重定向的多功能跳轉(zhuǎn)函數(shù)

    PHP封裝的一個支持HTML、JS、PHP重定向的多功能跳轉(zhuǎn)函數(shù)

    這篇文章主要介紹了PHP封裝的一個支持HTML、JS、PHP重定向的多功能跳轉(zhuǎn)函數(shù),需要的朋友可以參考下
    2014-06-06
  • 深入理解PHP 數(shù)組之count 函數(shù)

    深入理解PHP 數(shù)組之count 函數(shù)

    下面小編就為大家?guī)硪黄钊肜斫釶HP 數(shù)組之count 函數(shù)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-06-06
  • 使用PHPMailer發(fā)送郵件實例

    使用PHPMailer發(fā)送郵件實例

    這篇文章為大家詳細(xì)主要介紹了使用PHPMailer發(fā)送郵件的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-02-02
  • ThinkPHP3.2框架使用addAll()批量插入數(shù)據(jù)的方法

    ThinkPHP3.2框架使用addAll()批量插入數(shù)據(jù)的方法

    這篇文章主要介紹了ThinkPHP3.2框架使用addAll()批量插入數(shù)據(jù)的方法,結(jié)合實例形式分析了thinkPHP針對單條數(shù)據(jù)插入及批量數(shù)據(jù)插入操作的相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2017-03-03
  • laravel多視圖共享數(shù)據(jù)實例代碼

    laravel多視圖共享數(shù)據(jù)實例代碼

    頁面視圖用于顯示文檔所有內(nèi)容在整個頁面的分布狀況和整個文檔在每一頁上的位置,并可對其進(jìn)行編輯操作,具有真正的“所見即所得”的顯示效果,下面這篇文章主要給大家介紹了關(guān)于laravel多視圖共享數(shù)據(jù)的相關(guān)資料,需要的朋友可以參考下
    2021-08-08
  • Yii控制器中filter過濾器用法分析

    Yii控制器中filter過濾器用法分析

    這篇文章主要介紹了Yii控制器中filter過濾器用法,結(jié)合實例形式簡單分析了過濾器filter的使用步驟與功能實現(xiàn)技巧,需要的朋友可以參考下
    2016-07-07
  • php+lottery.js實現(xiàn)九宮格抽獎功能

    php+lottery.js實現(xiàn)九宮格抽獎功能

    這篇文章主要介紹了php+lottery.js制作九宮格抽獎實例,本文通過實例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-07-07
  • smarty高級特性之對象的使用方法

    smarty高級特性之對象的使用方法

    這篇文章主要介紹了smarty高級特性之對象的使用方法,結(jié)合實例形式簡單分析了使用類與對象的相關(guān)技巧,需要的朋友可以參考下
    2015-12-12
  • php中Swoole的熱更新實現(xiàn)代碼實例

    php中Swoole的熱更新實現(xiàn)代碼實例

    這篇文章主要介紹了php中SWOOLE的熱更新實現(xiàn)代碼實例,熱更新是比較常用的技術(shù),有需要同學(xué)可以研究下
    2021-03-03

最新評論

沙坪坝区| 南昌县| 汤原县| 乌什县| 民权县| 景泰县| 辽阳市| 长寿区| 洪洞县| 微山县| 曲周县| 镇雄县| 西藏| 通山县| 融水| 新密市| 怀柔区| 河西区| 罗城| 台中县| 元朗区| 洪洞县| 民丰县| 镇巴县| 合江县| 灵川县| 青铜峡市| 永寿县| 临湘市| 科尔| 大关县| 宁阳县| 汪清县| 新源县| 紫金县| 龙川县| 玉环县| 沧源| 汕尾市| 安图县| 长寿区|