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


Posted in PHP onFebruary 06, 2018

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原创论坛
Oct 09 PHP
域名查询代码公布
Oct 09 PHP
我的群发邮件程序
Oct 09 PHP
Zend Studio for Eclipse的java.lang.NullPointerException错误的解决方法
Dec 06 PHP
PHP中防止直接访问或查看或下载config.php文件的方法
Jul 07 PHP
php中使用preg_replace函数匹配图片并加上链接的方法
Feb 06 PHP
php中filter函数验证、过滤用户输入的数据
Jan 13 PHP
php实现的短网址算法分享
Jun 20 PHP
PHP中ini_set与ini_get用法实例
Nov 04 PHP
phpStudy2016 配置多个域名期间遇到的问题小结
Oct 19 PHP
用PHP做了一个领取优惠券活动的示例代码
Jul 05 PHP
laravel 操作数据库常用函数的返回值方法
Oct 11 PHP
PHP定义字符串的四种方式详解
Feb 06 #PHP
PHP异步进程助手async-helper
Feb 05 #PHP
详解PHP中的外观模式facade pattern
Feb 05 #PHP
浅析PHP开发规范
Feb 05 #PHP
实例讲解PHP页面静态化
Feb 05 #PHP
PHP使用ActiveMQ实例
Feb 05 #PHP
详解PHP中mb_strpos的使用
Feb 04 #PHP
You might like
php中用文本文件做数据库的实现方法
2008/03/27 PHP
php 启动报错如何解决
2014/01/17 PHP
laravel-admin的图片删除实例
2019/09/30 PHP
Tab页界面,用jQuery及Ajax技术实现
2009/09/21 Javascript
isArray()函数(JavaScript中对象类型判断的几种方法)
2009/11/26 Javascript
使用jquery与图片美化checkbox和radio控件的代码(打包下载)
2010/11/11 Javascript
js中哈希表的几种用法总结
2014/01/28 Javascript
js限制文本框的输入内容代码分享(3类)
2015/08/20 Javascript
jQuery仅用3行代码实现的显示与隐藏功能完整实例
2015/10/08 Javascript
谈谈我对JavaScript中typeof和instanceof的深入理解
2015/12/25 Javascript
浅谈JavaScript对象与继承
2016/07/10 Javascript
利用Vue.js指令实现全选功能
2016/09/08 Javascript
浅谈js对象属性 通过点(.) 和方括号([]) 的不同之处
2016/10/29 Javascript
IntersectionObserver API 详解篇
2016/12/11 Javascript
浅谈Angular.js中使用$watch监听模型变化
2017/01/10 Javascript
JavaScript和JQuery获取DIV值的方法示例
2017/03/07 Javascript
JavaScript数据结构学习之数组、栈与队列
2017/05/02 Javascript
Easy UI动态树点击文字实现展开关闭功能
2017/09/30 Javascript
JavaScript求一组数的最小公倍数和最大公约数常用算法详解【面向对象,回归迭代和循环】
2018/05/07 Javascript
JS中的两种数据类型及实现引用类型的深拷贝的方法
2018/08/12 Javascript
Node.js 获取微信JS-SDK CONFIG的方法示例
2019/05/21 Javascript
微信小程序实现电影App导航和轮播
2020/11/30 Javascript
[01:33:25]DOTA2-DPC中国联赛 正赛 Elephant vs IG BO3 第一场 1月24日
2021/03/11 DOTA
pyqt和pyside开发图形化界面
2014/01/22 Python
Python使用pymysql从MySQL数据库中读出数据的方法
2018/07/25 Python
Python requests模块实例用法
2019/02/11 Python
python的内存管理和垃圾回收机制详解
2019/05/18 Python
tensorflow 自定义损失函数示例代码
2020/02/05 Python
利用python控制Autocad:pyautocad方式
2020/06/01 Python
python不同版本的_new_不同点总结
2020/12/09 Python
澳大利亚小众服装品牌:Maurie & Eve
2018/03/27 全球购物
PREMIUM-MALL法国:行李、箱包及配件在线
2019/05/30 全球购物
学生逃课万能检讨书2000字
2015/02/17 职场文书
同事打架检讨书
2015/05/06 职场文书
2015年小学辅导员工作总结
2015/05/27 职场文书
大脑的记忆过程在做数据压缩,不同图形也有共同的记忆格式
2022/04/29 数码科技