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

 更新时间:2018年02月06日 09:58:10   作者:5735524  
下面小编就为大家分享一篇php 替换文章中的图片路径,下载图片到本地服务器的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

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 替换文章中的图片路径,下载图片到本地服务器的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • destoon实现会员商铺中指定会员或会员组投放广告的方法

    destoon实现会员商铺中指定会员或会员组投放广告的方法

    这篇文章主要介绍了destoon实现会员商铺中指定会员或会员组投放广告的方法,很实用的技巧,需要的朋友可以参考下
    2014-08-08
  • laravel利用中间件做防非法登录和权限控制示例

    laravel利用中间件做防非法登录和权限控制示例

    今天小编就为大家分享一篇laravel利用中间件做防非法登录和权限控制示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • PHP中把stdClass Object转array的几个方法

    PHP中把stdClass Object转array的几个方法

    PHP和JS通讯通常都用json,但用 json 传过来的数组并不是标准的array,而是 stdClass 类型。那么我们可以参考下面的几个方法进行转换。
    2014-05-05
  • PHPThumb图片处理实例

    PHPThumb图片处理实例

    这篇文章主要介绍了PHPThumb图片处理实例,例如生成缩略图、图片尺寸调整、图片截取、图片加水印、图片旋转等,需要的朋友可以参考下
    2014-05-05
  • PHP错误处理函数

    PHP错误处理函数

    在 PHP 中,默认的错误处理很简单。一条错误消息会被发送到浏览器,这条消息带有文件名、行号以及描述错误的消息
    2016-04-04
  • PHP实现linux命令tail -f

    PHP实现linux命令tail -f

    tail 命令从指定点开始将文件写到标准输出.使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不但刷新,使你看到最新的文件内容.接下来通过本文给大家介绍PHP实现linux命令tail -f,需要的朋友参考下
    2016-02-02
  • PHP魔术方法的使用示例

    PHP魔术方法的使用示例

    这篇文章主要介绍了PHP魔术方法的使用示例,本文分别讲解了__get、__set、__call、__callStatic、__toString、 __invoke等魔术方法的使用,需要的朋友可以参考下
    2015-06-06
  • thinkPHP数据库增删改查操作方法实例详解

    thinkPHP数据库增删改查操作方法实例详解

    这篇文章主要介绍了thinkPHP数据库增删改查操作方法,结合实例形式详细分析了thinkPHP常用数据库操作函数与相关使用技巧,需要的朋友可以参考下
    2016-12-12
  • ThinkPHP中Widget扩展的两种写法及调用方法详解

    ThinkPHP中Widget扩展的两种写法及调用方法详解

    这篇文章主要介绍了ThinkPHP中Widget扩展的两种写法及调用方法,详细分析了Widget扩展的写法及相应的调用技巧,需要的朋友可以参考下
    2017-05-05
  • 利用PHP访问MySql数据库的逻辑操作以及增删改查的实例讲解

    利用PHP访问MySql数据库的逻辑操作以及增删改查的实例讲解

    下面小编就为大家带来一篇利用PHP访问MySql数据库的逻辑操作以及增删改查的实例讲解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08

最新评论