php通過 curl方法請求下載 http鏈接文件
<?php
$url = 'https://example.com/1.webp?test=1';
//去除?后面的參數
$url=strtok($url,'?');
// 初始化文件存放的路徑
$dir = dirname(__FILE__).DIRECTORY_SEPARATOR;
if(!is_dir($dir)){
mkdir($dir);
}
// 初始化 cURL 會話
$ch = curl_init($url);
// 使用 basename() 方法返回值來獲取文件的文件名稱
$file_name = basename($url);
// 存放文件到本地的完整路徑
$save_file_loc = $dir . $file_name;
echo $save_file_loc;
// 打開文件
$fp = fopen($save_file_loc, 'wb');
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
// 處理一個 cURL 會話
$result = curl_exec($ch);
// 關閉一個 cURL會話並釋放所有資源
curl_close($ch);
//將curl請求返回結果寫入到 fp 打開的文件句柄中
fwrite($fp, $result);
// 關閉 fp 句柄並釋放所有資源
fclose($fp);