PHP下载远程文件到本地存储的方法

yipeiwu_com6年前PHP代码库

本文实例讲述了PHP下载远程文件到本地存储的方法。分享给大家供大家参考。具体实现方法如下:

<?php
function GrabImage($url,$filename="") {
  if($url=="") return false;
  if($filename=="") {
    $ext=strrchr($url,".");
    if($ext!=".gif" && $ext!=".jpg") return false;
    $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;
}
function gethttpimage($url){ 
  if(!empty($url)){ 
    $filename=uniqid().strrchr($url,"."); 
    echo $filename;
    $get_file=@file_get_contents($url); 
    if($get_file){ 
      $fp=@fopen($filename,"w"); 
      @fwrite($fp,$get_file); 
      @fclose($fp); 
    } 
    return $imgUrl; 
  }else{ 
    return false; 
  } 
} 
//$img=GrabImage("//www.jb51.net/images/logo.gif","");
$img=gethttpimage("//www.jb51.net/images/logo.gif","");
if($img) echo '<pre><img src="'.$img.'"></pre>';
else echo "false";
?>

希望本文所述对大家的php程序设计有所帮助。

相关文章

PHP中几种常见的超时处理全面总结

在PHP开发中工作里非常多使用到超时处理到超时的场合,我说几个场景: 1. 异步获取数据如果某个后端数据源获取不成功则跳过,不影响整个页面展现 2. 为了保证Web服务器不会因为当个页面...

基于php中使用excel的简单介绍

基于php中使用excel的简单介绍

在工作中需要处理多语言的翻译问题,翻译都是写在excel表格里面。为了处理方便我就保留中文和英文两列。 这样需要将这些数据从excel中取出来,然乎保存在excel的数组中,通过使用循环...

DEDE采集大师官方留后门的删除办法

去除官方后门方法:安装好采集大师后,请立即删除 include目录下的dedesql.query.php文件,如已经安装过,有可能文件已被改名为arc.sqlquery.class.ph...

php 获取页面中指定内容的实现类

功能: 1.获取内容中的url,email,image。 2.替换内容中的url,email,image。 url:<a href="url">xxx</a> e...

两种php去除二维数组的重复项方法

php去掉二维数组的重复值的方法总结,具体代码如下: 方法一: //二维数组去掉重复值 function array_unique_fb($array2D){ foreach (...