curl下载文件

时间:2023-03-09 01:31:30
curl下载文件
* curl下载文件
* 根据业务需求
* 通过不同站点去访问路径
* 下载文件
* 但是不同站点需要设置header头
* 这里使用curl方式下载
* 具体看代码:
 //下载地址
$url = 'https://xxxxx.com/download/xxxxx';
//header请求头 [主要用于将请求模拟为浏览器发送请求]
$header = array(
'xxxx:xxxxxx',//自定义header头
'xxxx: xxxxx',
//模拟浏览器访问 可以将浏览器中的请求复制出来进行处理
'accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8',
'accept-encoding: gzip, deflate, br',
'accept-language: zh-CN,zh;q=0.9',
'user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36',
);
//文件存储路径
$filename = '/Users/kinsfeng/Desktop/xxx.zip';
$ch = curl_init();
$timeout = 10;
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
$file = curl_exec($ch);
curl_close($ch); // 保存文件到制定路径
file_put_contents($filename, $file); unset($file, $url);
return true;