我正在尝试直接从链接下载文件,但我需要使用Curl,直接链接无效,服务器没有安全限制,可直接访问。
只需要通过curl访问链接并执行下载。
使用类似的东西:
/ * php script * /
$ url = "http://server:8080/system/downloads/idfile";
$ ch = curl_init ();
curl_setopt ($ ch, CURLOPT_URL, $ url);
curl_setopt ($ ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt ($ ch, CURLOPT_HEADER, 0);
curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt ($ ch, CURLOPT_BINARYTRANSFER, true);
$ data = curl_exec ($ ch);
curl_close ($ ch);
return $ data;
/ *结束脚本* /
我在返回之前使用了一些标题,但文件格式为doc,xls,ppt返回已损坏的
header ("Content-type: application/msword");
header ("Content-Disposition: attachment; filename=file.doc");
可以帮我直接通过点击html页面中的按钮来下载文件并运行脚本卷起来吗?
目前我正在使用codeigniter,其中控制器中此脚本的卷曲,并且操作将通过视图中的链接实现
感谢
答案 0 :(得分:0)
您可以使用此代码,但始终使用此代码。
function get_all_data($url) {
$ch = curl_init();
$timeout = 5;
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$data = curl_exec($ch);
curl_close($ch);
return $data;
}
$returned_content = get_all_data('https://www.connectedcommerce.net/');
file_put_contents('open.txt',$returned_content,FILE_APPEND);
答案 1 :(得分:0)
这种方式不起作用。没有返回数据。访问该调用的链接是从另一个系统下载的方法,因此使用受限制的直接访问该链接。 Smpre我通过curl调用方法,但不返回任何内容。下载方法有效,因为测试