您好,登錄后才能下訂單哦!
這篇文章主要介紹curl模擬http請求的案例分析,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
cURL的官方定義為:curl is a command line tool for transferring data with URL syntax
,即使用URL語法規則來傳輸數據的命令行工具。
PHP 支持 Daniel Stenberg 創建的 libcurl 庫,能夠連接通訊各種服務器、使用各種協議。libcurl 目前支持的協議有 http、https、ftp、gopher、telnet、dict、file、ldap。 libcurl 同時支持 HTTPS 證書、HTTP POST、HTTP PUT、 FTP 上傳(也能通過 PHP 的 FTP 擴展完成)、HTTP 基于表單的上傳、代理、cookies、用戶名+密碼的認證。
圖示:
/** * get方式發送curl請求 * @param string $url 請求服務器地址 * @param array $header 請求頭數據 * @param int $timeout 超時時間 * @return mixed * @author itbsl */ function curl_get($url, $header=[], $timeout=30) { //初始化curl $curl = curl_init(); //設置curl(請求的服務器地址) //參數1: curl資源 //參數2: 配置項名稱 //參數3: 配置項的值 curl_setopt($curl, CURLOPT_URL, $url); //跳過安全證書驗證 curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); // 從證書中檢查SSL加密算法是否存在 curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); // 跳過證書檢查 //設置獲取的信息以文件流的形式返回,而不是直接輸出 curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_HTTPHEADER, $header); curl_setopt($curl, CURLOPT_TIMEOUT, $timeout); //發出請求 $result = curl_exec($curl); //關閉curl資源 curl_close($curl); return $result; }
/** * post方式發送curl請求 * @param string $url 請求的服務器地址 * @param array $data 要發送的數據 * @param array $header 請求頭數據 * @param int $timeout 超時時間 * @return mixed * @author itbsl<itbsl@foxmail.com> */ function curl_post($url, $data=[], $header=[], $timeout=30) { //初始化curl $curl = curl_init(); //設置curl(請求的服務器地址) //參數1: curl資源 //參數2: 配置項名稱 //參數3: 配置項的值 curl_setopt($curl, CURLOPT_URL, $url); //跳過安全證書驗證 curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); // 從證書中檢查SSL加密算法是否存在 curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); // 跳過證書檢查 //設置獲取的信息以文件流的形式返回,而不是直接輸出 curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_HTTPHEADER, $header); //設置請求方式為post請求 curl_setopt($curl, CURLOPT_POST, true); //設置post方式提交時攜帶的數據 curl_setopt($curl, CURLOPT_POSTFIELDS, $data); curl_setopt($curl, CURLOPT_TIMEOUT, $timeout); //發出請求 $result = curl_exec($curl); //關閉curl資源 curl_close($curl); return $result; }
以上是curl模擬http請求的案例分析的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。