远程图片保存到服务器 php,保存远程图片到本地服务器几种方法[php,asp]网
保存遠程圖片到本地服務器幾種方法[,]
function get_file($url,$folder){
set_time_limit (24 * 60 * 60);
$destination_folder = $folder?$folder.'/':'';//文件下載保存目錄
$newfname = $destination_folder . basename($url);
$file = ($url, "rb");
if ($file) {
$newf = ($newfname, "wb");
if ($newf)
while(!feof($file)) {
fwrite($newf, fread($file, 1024 * 8 ), 1024 * 8 );
}
}
if ($file) {
fclose($file);
}
if ($newf) {
fclose($newf);
}
}
// 方法二
// $url 是遠程圖片的完整url地址,不能為空。
// $filename 是可選變量: 如果為空,本地文件名將基于時間和日期
// 自動生成.
function grabimage($url,$filename="") {
if($url==""):return false;endif;
if($filename=="") {
$ext=strrchr($url,".");
if($ext!=".gif" && $ext!=".jpg"):return false;endif;
$filename=date("dmyhis").$ext;
}
ob_start();
readfile($url);
$img = ob_get_contents();
ob_end_clean();
$size = strlen($img);
$fp2=@fopen($filename, "a");
fwrite($fp2,$img);
fclose($fp2);
return $filename;
}
$img=grabimage("http://www.111cn.net/img/000003.png","www.111cn.net.png");
if($img):echo '
';else:echo "false";
endif;
//fopen下載遠程文件的函數:傳入遠程url和需要存儲下載文件的文件夾名,結尾無需反斜線
//保存遠程服務器圖片
/*
sub saveremotefile(localfilename,remotefileurl)
dim ads,retrieval,getremotedata
set retrieval = server.createobject("microsoft.xmlhttp")
with retrieval
.open "get", remotefileurl, false, "", ""
.send
getremotedata = .responsebody
end with
set retrieval = nothing
set ads = server.createobject("adodb.stream")
with ads
.type = 1
.open
.write getremotedata
.savetofile localfilename,2
.cancel()
.close()
end with
set ads=nothing
end sub
remotefileurl = "" '獲取遠程圖片
fileext = right(remotefileurl,4) '獲取遠程圖片的格式
'隨機文件名稱
randomize
rannum = int(9*10^3*rnd)+10^3
dtnow = now()
filename = year(dtnow) & right("0" & month(dtnow),2) & right("0" & day(dtnow),2) & right("0" & hour(dtnow),2) & right("0" & minute(dtnow),2) & right("0" & second(dtnow),2) & rannum & fileext
localfilename = "./" '保存本地路徑
if right(localfilename,1) <> "/" then localfilename = localfilename & "/"
savefile = server.mappath(localfilename & filename)
saveremotefile savefile,remotefileurl '保存遠程圖片
response.write "保存成功,點擊查看圖片文件...."
*/
//方法三
/*保存圖片函數*/
function saveimage($url) //保存url中的圖片文件到本地的imges文件夾下,名稱不變,返回圖片的路徑和名稱
{
if($url==""):return false;endif;
/*保存路徑*/
$path="movieimg/".date('y-m-d'); //保存路徑
if(!file_exists($path))
{
//檢查是否有該文件夾,如果沒有就創建,并給予最高權限
mkdir("$path", 0700);
}
$name=strrchr($url,"/");
$filename=$path.$name;
ob_start();
readfile($url);
$img = ob_get_contents();
ob_end_clean();
$size = strlen($img);
$fp2=@fopen($filename, "a");
fwrite($fp2,$img);
fclose($fp2);
return $filename;
}
?>
總結
以上是生活随笔為你收集整理的远程图片保存到服务器 php,保存远程图片到本地服务器几种方法[php,asp]网的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java 简单的计算器程序,Java 简
- 下一篇: 动态规划算法php,php算法学习之动态