Ce que cet article vous apporte, c'est quelles sont les méthodes de requête de Curl en php ? L'introduction des quatre méthodes de requête de php curl a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer, j'espère que cela vous sera utile.
1. Envoyer les données au format json, demander l'adresse : https
protected function https_request($url,$data=null){ $curl = curl_init(); curl_setopt($curl,CURLOPT_URL,$url); curl_setopt($curl,CURLOPT_SSL_VERIFYPEER,FALSE); curl_setopt($curl,CURLOPT_SSL_VERIFYHOST,FALSE); if(!empty($data)){ curl_setopt($curl,CURLOPT_POST,1); curl_setopt($curl,CURLOPT_POSTFIELDS,$data); } curl_setopt($curl,CURLOPT_RETURNTRANSFER,1); //下面这行是修改后增加的代码,就是配置设置host访问,发送的数据类型为application/json curl_setopt($curl, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json; charset=utf-8', 'Content-Length: ' . strlen($data) )); $output = curl_exec($curl); curl_close($curl); return $output; }
2. Envoyer les données au format json, demander l'adresse : http
protected function curlPost($Url, $data){ $ch = curl_init($Url); curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST"); curl_setopt($ch, CURLOPT_POSTFIELDS, $data);//$data JSON类型字符串 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json', 'Content-Length: ' . strlen($data))); $result = curl_exec($ch); curl_close ( $ch ); return $result; }
3. , soumission au format de formulaire
function file_get_contents_post($url, $post){ $options = array( 'http'=> array( 'method'=>'POST', 'header' => "Content-type: application/x-www-form-urlencoded ", 'content'=> http_build_query($post), ), ); $result = file_get_contents($url,false, stream_context_create($options)); return $result; } $datare = file_get_contents_post("http://103.72.165.183/api/payment.aspx", $data); var_dump($datare);
4 $url est le formulaire d'adresse plus les données : http://baidu.com?a="ss"&b="ds";
public function getSSLHttp($url){ $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_HEADER, false); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE); // https请求 不验证证书和hosts curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE); $data = curl_exec($curl); $httpCode = curl_getinfo($curl,CURLINFO_HTTP_CODE); if ( $httpCode != 200 ){ $data="https connect timeout"; } curl_close($curl); return $data; }
Recommandations associées :
Comment php curl implémente les requêtes http et https, requête phpcurlhttps
PHP envoie une requête POST de trois manières
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!