菜单

php实现图片批量下载到本地实例,php获取远程图片并把它保存到本地

2019年8月7日 - 4166am金沙下载

对于未有防盗链的图形

例1

<?php

 代码如下

 代码如下

//
// Function: 获取远程图片并把它保存到地头
//
//
// 明确你有把文件写入本地服务器的权限
//
//
// 变量表达:
// $url 是远程图片的完好UPAJEROL地址,不能为空。
// $filename 是可选变量: 假若为空,当和姑件主力基于时间和日期
// 自动生成.

/*
 * 对于尚未防盗链的图纸
 * $url 图片地址
 * $filename 图片保存地址
 * return
再次回到下载的图样路线和称号,图片大小
 */
function GrabImage($url,$filepath,$filename=””) {
if($url==””) return false;
 
$ext=strrchr($url,”.”);
if($filename==””) {
if($ext!=”.gif” && $ext!=”.jpg” && $ext!=”.png”) return false;
$filename=date(“YmdHis”);
}
 
ob_start();
readfile($url);
$img = ob_get_contents();
ob_end_clean();
$size = strlen($img); //
图片大小
 
!is_dir(getcwd().$filepath)?
mkdir(getcwd().$filepath):null;//生成文件夹
 
$fp2=fopen(getcwd().$filepath.$filename.$ext,
“a”);
fwrite($fp2,$img);
fclose($fp2);
 
return array($filepath.$filename.$ext,$size);
}
 

/*
*意义:php三种主意全面兑现下载远程图片保存到本地
*参数:文件url,保存文件名称,使用的下载格局
*当保存文件名为空时则选择远程文件原本的名号
*/
function getImage($url,$filename=”,$type=0){
    if($url==”){return false;}
    if($filename==”){
        $ext=strrchr($url,’.’);
        if($ext!=’.gif’ && $ext!=’.jpg’){return false;}
        $filename=time().$ext;
    }
    //文件保存路线
    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);
  $img=curl_exec($ch);
  curl_close($ch);
    }else{
     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;
}

function GrabImage($url,$filename=””) {
if($url==””):return false;endif;

有防盗链的图片
 

例2

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);

/*
* 有防盗链的图片
* $url 图片地址
* $filename 图片保存地址
* return 再次回到下载的图形路线和称号,图片大小
* $fromurl 来源UCRUISERL,填写来源图片网址可破解防盗链
*/
function GrabImage2($url,$filepath,$filename=””,$fromurl) {
 if($url==””) return false;
 
$ext=strrchr($url,”.”);
 if($filename==””) {
 if($ext!=”.gif” && $ext!=”.jpg” && $ext!=”.png”) return false;
 $filename=date(“YmdHis”);
 }
 
!is_dir(getcwd().$filepath)?
mkdir(getcwd().$filepath):null;//生成文件夹
 
 $re = $this->curlg($url,$fromurl);
 $size =
file_put_contents(getcwd().$filepath.$filename.$ext,$re);//再次来到大小
 
 return array($filepath.$filename.$ext,$size);
}

<?php

$fp2=@fopen($filename, “a”);
fwrite($fp2,$img);
fclose($fp2);

批量搜罗代码:

//
// Function: 获取远程图片并把它保存到地方
//
//
//   鲜明你有把公文写入本地服务器的权力
// 
//
// 变量表达:
// $url 是长途图片的一体化UXC60L地址,不可能为空。
// $filename 是可选变量: 借使为空,当半夏件宿将基于时间和日期
// 自动生成.

return $filename;
}

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图