PHP通过url下载远程图片到本地

本文章从我一个ajax实例中提供了段关于通过图片地地址把图片保存到本址,这里我们直接通过readfile读取然后通过fopen保存即可,实例代码如下:

  1. <?php
  2. /**
  3. * 通过图片的远程url,下载到本地
  4. * @param: $url为图片远程链接
  5. * @param: $filename为下载图片后保存的文件名
  6. */
  7. function GrabImage($url,$filename) {
  8. if($url==""):return false;endif;
  9. ob_start();
  10. readfile($url);
  11. $img = ob_get_contents();
  12. ob_end_clean();
  13. $size = strlen($img);
  14. //"../../images/books/"为存储目录,$filename为文件名
  15. $fp2=@fopen("../../images/books/".$filename, "a");
  16. fwrite($fp2,$img);
  17. fclose($fp2);
  18. return $filename;
  19. }
  20. ?>

函数返回图片下载完后保存的名字,那么只需在数据库中存储 图片目录+图片名即可。