php 替换文章中的图片路径,下载图片到本地服务器的方法

时间:2018-02-10

php 替换文章中的图片路径,下载图片到本地服务器

/**
 * 获取替换文章中的图片路径
 * @param string $xstr 内容
 * @param string $oriweb 网址
 * @return string
 *
 */
function replaceimg($xstr, $oriweb){
  //保存路径
  $d = date('Ymd', time());
  $saveimgfile_1 = '/uploads/allimg/'.$d;
  $dirslsitss = DEDEROOT.$saveimgfile_1;//分类是否存在
  if(!is_dir($dirslsitss)) {
    @mkdir($dirslsitss, 0777);
  }
  //匹配图片的src
  preg_match_all('#<img.*?src="([^"]*)"[^>]*>#i', $xstr, $match);
  foreach($match[1] as $imgurl){
    $imgurl = $imgurl;
    if(is_int(strpos($imgurl, 'http'))){
      $arcurl = $imgurl;
    } else {
      $arcurl = $oriweb.$imgurl;
    }
    $img=file_get_contents($arcurl);
    if(!empty($img)) {
      //保存图片到服务器
      $fileimgname = time()."-".rand(1000,9999).".jpg";
      $filecachs=$dirslsitss."/".$fileimgname;
      $fanhuistr = file_put_contents( $filecachs, $img );
      $saveimgfile = $saveimgfile_1."/".$fileimgname;
      $xstr=str_replace($imgurl,$saveimgfile,$xstr);
    }
  }
  return $xstr;
}

以上这篇php 替换文章中的图片路径,下载图片到本地服务器的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

您可能感兴趣的文章:

  • php采集文章中的图片获取替换到本地(实现代码)
  • PHP实现下载远程图片保存到本地的方法
  • php获取远程图片并下载保存到本地的方法分析
  • php获取CSS文件中图片地址并下载到本地的方法
  • PHP获取远程图片并保存到本地的方法
  • php保存任意网络图片到服务器的方法
上一篇:PHP给源代码加密的几种方法汇总(推荐) 下一篇:PHP定义字符串的四种方式详解

相关文章

最新文章