怎么在php中使用curl模拟post提交数据

这篇文章给大家介绍怎么在php中使用curl模拟post提交数据,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

<?header("Content-type: text/html; charset=utf8");/* * 提交请求* @param $header array 需要配置的域名等header设置 array("Host: devzc.com");* @param $data string 需要提交的数据 'user=xxx&qq=xxx&id=xxx&post=xxx'....* @param $url string 要提交的url 'http://192.168.1.12/xxx/xxx/api/';*/function curl_post($header,$data,$url){ $ch = curl_init(); $res= curl_setopt ($ch, CURLOPT_URL,$url); var_dump($res); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt ($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch,CURLOPT_HTTPHEADER,$header); $result = curl_exec ($ch); curl_close($ch); if ($result == NULL) {  return 0; } return $result;}
$url = 'http://127.0.0.1' ;
$header = array("Host:127.0.0.1",  "Content-Type:application/x-www-form-urlencoded",  'Referer:http://127.0.0.1/toolindex.xhtml',  'User-Agent: Mozilla/4.0 (compatible; MSIE .0; Windows NT 6.1; Trident/4.0; SLCC2;)');
$data = 'tools_id=1&env=gamma';echo "argv:$data<br>";
$ret = curl_post($header, $data,$url);$utf8 = iconv('GB2312', 'UTF-8//IGNORE', $ret);echo 'return:<br>'.nl2br($utf8 ).'<br>';?>

关于怎么在php中使用curl模拟post提交数据就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。