PHP獲取介面資料(模擬Get)
阿新 • • 發佈:2019-01-24
當我們在做PHP開發的時候,很多時候需要對介面進行測試,或者更方便的呼叫一些已有模組的介面,取到結果並進行後續操作,我們可以通過curl進行模擬提交post和get請求,來去實現這些功能。
之後就可以通過CURL::curl_post($url,$array)或者CURL::curl_get($url);的方式呼叫介面並得到資料了。下面是對curl的post和get的封裝
<?php /** * Created by PhpStorm. * User: thinkpad * Date: 2015/7/17 0017 * Time: 13:24 */ classAction { public static function curl_get($url){ $testurl = $url; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $testurl); //引數為1表示傳輸資料,為0表示直接輸出顯示。 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //引數為0表示不帶標頭檔案,為1表示帶標頭檔案curl_setopt($ch, CURLOPT_HEADER,0); $output = curl_exec($ch); curl_close($ch); return $output; } public static function curl_post($url){ $curl = curl_init(); //設定提交的url curl_setopt($curl, CURLOPT_URL, $url);//設定標頭檔案的資訊作為資料流輸出 curl_setopt($curl, CURLOPT_HEADER, 0); //設定獲取的資訊以檔案流的形式返回,而不是直接輸出。 curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); //設定post方式提交 curl_setopt($curl, CURLOPT_POST, 1);//執行命令 $data = curl_exec($curl); //關閉URL請求 curl_close($curl); //獲得資料並返回 return $data; } }