下面代码使用curl模拟post请求链接后直接显示出了文件内容,如何修改成不显示内容而直接下载请求到的.torrent格式文件呢
function curl_post($header,$data,$url)
{
$ch = curl_init();
$res= curl_setopt ($ch, curlopt_url,$url);
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://www.bttiantang.com/download4.php' ;
$header = array("host:www.bttiantang.com",
"content-type:application/x-www-form-urlencoded",
'user-agent: mozilla/4.0 (compatible; msie .0; windows nt 6.1; trident/4.0; slcc2;)');
$data = 'action=download&id=26881&uhash=eecf3d3071a7b672c314bc39';
$ret = curl_post($header, $data,$url);
//需将内容显示修改为文件下载
echo $ret;
------解决思路----------------------
不要echo $ret;
把$ret写入文件中去。保存起来
------解决思路----------------------
$ret = curl_post($header, $data,$url);
//需将内容显示修改为文件下载
$filename = 'x.torrent';
header("content-type: application/force-download");
header("content-disposition: attachment; filename=$filename");
echo $ret;
下载的 x.torrent 用迅雷打开为
本文给大家分享了求帮忙修改个php curl模拟post请求内容后并下载文件的解决思路,希望大家喜欢,请持续关注本站,本站每天都有新的内容更新,谢谢。!
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:)!