Le contenu principal de cet article est d'utiliser curl pour simuler des requêtes HTTP. Les amis dans le besoin peuvent y jeter un œil. .
La définition officielle de cURL est : curl is a command line tool for transferring data with URL syntax
, qui est un outil de ligne de commande qui utilise les règles de syntaxe d'URL pour transmettre des données.
PHP prend en charge la bibliothèque libcurl créée par Daniel Stenberg, qui peut se connecter à différents serveurs et utiliser différents protocoles. Les protocoles actuellement pris en charge par libcurl incluent http, https, ftp, gopher, telnet, dict, file et ldap. libcurl prend également en charge les certificats HTTPS, HTTP POST, HTTP PUT, le téléchargement FTP (peut également être complété via l'extension FTP de PHP), le téléchargement basé sur un formulaire HTTP, le proxy, les cookies, l'authentification par nom d'utilisateur et mot de passe.
Image :
/** * 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; }
Tutoriels associés : Tutoriel vidéo PHP
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!