1. 程式人生 > >php curl請求介面並獲取資料示例

php curl請求介面並獲取資料示例

當我們在做PHP開發的時候,很多時候需要對介面進行測試,或者更方便的呼叫一些已有模組的介面,取到結果並進行後續操作,我們可以通過curl進行模擬提交post和get請求,來去實現這些功能。

下面是對curl的post和get的封裝

  1. <?php
  2. /**  
  3.  * Created by PhpStorm.  
  4.  * User: thinkpad  
  5.  * Date: 2015/7/17 0017  
  6.  * Time: 13:24  
  7.  */  
  8. class Action  
  9. {  
  10.     public static function curl_get($url){  
  11.            $testurl
     = $url;  
  12.            $ch = curl_init();    
  13.            curl_setopt($ch, CURLOPT_URL, $testurl);    
  14.             //引數為1表示傳輸資料,為0表示直接輸出顯示。  
  15.            curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);  
  16.             //引數為0表示不帶標頭檔案,為1表示帶標頭檔案  
  17.            curl_setopt($ch, CURLOPT_HEADER,0);  
  18.            $output = 
    curl_exec($ch);   
  19.            curl_close($ch);   
  20.            return $output;  
  21.      }  
  22.     /*  
  23.      * url:訪問路徑  
  24.      * array:要傳遞的陣列  
  25.      * */  
  26.     public static function curl_post($url,$array){  
  27.         $curl = curl_init();  
  28.         //設定提交的url  
  29.         curl_setopt($curl, CURLOPT_URL, $url);  
  30.         //設定標頭檔案的資訊作為資料流輸出  
  31.         curl_setopt($curl, CURLOPT_HEADER, 0);  
  32.         //設定獲取的資訊以檔案流的形式返回,而不是直接輸出。  
  33.         curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);  
  34.         //設定post方式提交  
  35.         curl_setopt($curl, CURLOPT_POST, 1);  
  36.         //設定post資料  
  37.         $post_data = $array;  
  38.         curl_setopt($curl, CURLOPT_POSTFIELDS, $post_data);  
  39.         //執行命令  
  40.         $data = curl_exec($curl);  
  41.         //關閉URL請求  
  42.         curl_close($curl);  
  43.       //獲得資料並返回  
  44.         return $data;  
  45.     }  
  46. }  

之後就可以通過CURL::curl_post($url,$array)或者CURL::curl_get($url);的方式呼叫介面並得到資料了。

相關推薦

php curl請求介面獲取資料示例

當我們在做PHP開發的時候,很多時候需要對介面進行測試,或者更方便的呼叫一些已有模組的介面,取到結果並進行後續操作,我們可以通過curl進行模擬提交post和get請求,來去實現這些功能。 下面是對curl的post和get的封裝 <?php /**    *

php curl請求介面獲取資料

當我們在做php開發的時候,很多時候需要對介面進行測試,或者更方便的呼叫一些已有模組的介面,取到結果並進行後續操作,我們可以通過curl進行模擬提交post和get請求,來去實現這些功能。 下面是對curl的post和get的封裝 <?php /** * Cre

PHP CURL模擬登陸提交資料,及PHP CURL檔案上傳/圖片下載等(僅作除錯,未完善)

<?php error_reporting(255); set_time_limit(120); /** * 傳送報頭資訊 * * @return void(0) || string; */ if(!function_exists('httpHeade

php curl請求接口獲取數據

sta .net return create tag tar url 輸出顯示 實現 當我們在做php開發的時候,很多時候需要對接口進行測試,或者更方便的調用一些已有模塊的接口,取到結果並進行後續操作,我們可以通過curl進行模擬提交post和get請求,來去實現這些功能。

java接收post請求獲取資料的方法(傳的json不含key)

昨天遇到一個問題 就是在接收post請求的時候獲取不到請求資料,自己用ajax寫的時候沒有問題 這個是報文內容 {"type":"WNING_INFO","code":"WYC","downtime":"2017-01-0101:00:00","busicode

php通過curl請求介面的各種設定

第一:請求頭部方式 為json ,獲取狀態碼 function send_http_json($url,$data) { $ch = curl_init($url); $this_header[] = "content-type:application/js

php寫app介面返回json資料

第一步:conn.php檔案,用於連線資料庫並定義介面格式,程式碼如下: <?php header("charset=utf-8"); $servername="localhost"; $

php curl請求頁面資料

1    /** 2 * 3 * [curl_post post方式請求] 4 * 5 * @param [type] $url [description] 6 * 7 * @param string $dat

PHP利用fsockopen POST HTTP請求(URL)獲取返回值

<?php   $srv_ip = '192.168.1.5';//你的目標服務地址.  $srv_port = 80;//埠  $url = 'http://localhost/fsock.php'; //接收你post的URL具體地址    $fp = '';  

php curl 請求下載檔案,以及同時向介面傳送引數和檔案

最近在弄抓取資料,自然而然用到curl,結合其中遇到的一些問題,google了很久,加上自己嘗試,最後都解決了。 首先是php curl 從url 下載檔案 function getImage($url, $fileName) { $ch = curl

php curl 請求302跳轉頁面

turn follow 自動跳轉 接口 exe col dump details useragent 今天對接支付接口,需要獲取支付頁面,發現支付商那邊給的鏈接會發送302 跳轉,最後發現該方法,絕對給力: <?php $url = ‘http://auto.jrj

php curl請求https 返回無結果|false|errno:35

download 版本 sign sel subject ble etop fig 問題 1 SSL: certificate subject name ‘WMSvc-GWAMSERVER02‘ does not match target host name 把cu

PHP curl請求https遇到的坑

無法 ret out function private 數據 fun header 驗證 PHP裏curl對https的證書配置默認是服務器端要求驗證的,如果服務器端沒有配置證書驗證,則無法請求https路徑。如果為了簡便使用不需要配置https證書的話,配置curl時將以

PHP Curl請求Https接口

html code urn operator nec tran ring AR image 在請求http的時候只需要 file_get_contents("http://www.sojson.com/open/api/weather/json.shtml?city=$Po

php curl請求接口碰到的問題總結

json字符串 使用curl 字段名 設置 com -type 方式 文檔 還要 用php curl請求接口碰到的問題 今天碰到個用php擴展curl類庫命令實現linux curl的情況,碰到了一些小問題,總結總結。 場景 向資源方請求實現某種功能。相關同學給出了例子:

java中使用Apache HttpClient傳送Http請求獲取返回結果

傳送http請求可以寫成一個工具類,HttpClient可以使用連線池建立,這樣的好處是我們可以自己定義一些配置,比如請求超時時間,最大連線數等等。 public class HttpUtil { private static CloseableHttpClient http

php curl請求。header頭中新增請求資訊

function get_data($key,$authorization,$url){       $headers = array(       'api-key:'.$key,       'a

fiddler 攔截指定的請求獲取請求頭和token資訊

開啟 fiddler -> rules ->customize rules 編輯customizerules.js 檔案 找到OnBeforeRequest方法 在這個方法體的第一行新增如下程式碼(說明:if判斷中的域名自行定義,可攔截指定的域名請求資訊) if (oSe

fastjson將jsonstr 轉化成json 物件 獲取資料

package com.dl.utils; import java.io.File; import java.io.IOException; import org.apache.commons.io.FileUtils; import com.alibab

PHP curl請求get和Post的請求方法+Headers引數

1:POST請求方式 $url = 'https://www.baidu.com/';//請求地址 //header 引數填寫方式 'tepy:2' $header = [ 'tepy:2' ]; //請求是實體資料 $content = [