下載遠程圖片的PHP腳本
<?php /* php實現下載遠程圖片到本地 @param $url string 遠程文件地址 @param $filename string 保存后的文件名(為空時則為隨機生成的文件名,否則為原文件名) @param $fileType array 允許的文件類型 @param $dirName string 文件保存的路徑(路徑其余部分根據時間系統自動生成) @param $type int 遠程獲取文件的方式 @return json 返回文件名、文件的保存路徑
例子:{'fileName':13668030896.jpg, 'saveDir':/www/test/img/2013/04/24/} */ echo getImage('
return false;
} //設置保存后的文件名 $filename = $filename == '' ? time().rand(0,9).'.'.$suffix : $defaultFileName;
//獲取遠程文件資源 if($type){
$ch = curl_init(); $timeout = 5; curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); $file = curl_exec($ch); curl_close($ch);
}else{
ob_start(); readfile($url); $file = ob_get_contents(); ob_end_clean();
} //設置文件保存路徑 $dirName = $dirName.'/'.date('Y', time()).'/'.date('m', time()).'/'.date('d',time()).'/'; if(!file_exists($dirName)){
mkdir($dirName, 0777, true);
} //保存文件 $res = fopen($dirName.$filename,'a'); fwrite($res,$file); fclose($res); return "{'fileName':$filename, 'saveDir':$dirName}"; }</pre>