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 相关文章推荐
WIN98下Apache1.3.14+PHP4.0.4的安装
Oct 09 PHP
php无限极分类实现的两种解决方法
Apr 28 PHP
destoon实现调用图文新闻的方法
Aug 21 PHP
php 模拟 asp.net webFrom 按钮提交事件实例
Oct 13 PHP
php通过asort()给关联数组按照值排序的方法
Mar 18 PHP
php生成curl命令行的方法
Dec 14 PHP
Symfony2框架创建项目与模板设置实例详解
Mar 17 PHP
laravel中的错误与日志用法详解
Jul 26 PHP
php array_walk_recursive 使用自定的函数处理数组中的每一个元素
Nov 16 PHP
浅谈PHP的exec()函数无返回值排查方法(必看)
Mar 31 PHP
PHP基于堆栈实现的高级计算器功能示例
Sep 15 PHP
php随机生成验证码,php随机生成数字,php随机生成数字加字母!
Apr 01 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实现图片缩放功能类
2013/12/18 PHP
php版微信js-sdk支付接口类用法示例
2016/10/12 PHP
PHP使用SMTP邮件服务器发送邮件示例
2018/08/28 PHP
php实现多站点共用session实现单点登录的方法详解
2019/09/18 PHP
深入理解JavaScript系列(12) 变量对象(Variable Object)
2012/01/16 Javascript
导入extjs、jquery 文件时$使用冲突问题解决方法
2014/01/14 Javascript
JS将数字转换成三位逗号分隔的样式(示例代码)
2014/02/19 Javascript
jquery原创弹出层折叠效果点击折叠弹出一个层
2014/03/12 Javascript
JS图片自动轮换效果实现思路附截图
2014/04/30 Javascript
jQuery根据ID获取input、checkbox、radio、select的示例
2014/08/11 Javascript
Javascript Object 对象学习笔记
2014/12/17 Javascript
Nodejs学习笔记之入门篇
2015/04/16 NodeJs
JS中常用的输出方式(五种)
2016/06/12 Javascript
react 组件传值的三种方法
2019/06/03 Javascript
ES6中字符串的使用方法扩展
2019/06/04 Javascript
使用layer弹窗提交表单时判断表单是否输入为空的例子
2019/09/26 Javascript
在Vue中使用mockjs代码实例
2020/11/25 Vue.js
[50:12]EG vs Fnatic 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
天翼开放平台免费短信验证码接口使用实例
2013/12/18 Python
Python实现发送email的几种常用方法
2014/08/18 Python
TensorFlow变量管理详解
2018/03/10 Python
Python简单定义与使用二叉树示例
2018/05/11 Python
python读取TXT每行,并存到LIST中的方法
2018/10/26 Python
对Python信号处理模块signal详解
2019/01/09 Python
Python 正则表达式 re.match/re.search/re.sub的使用解析
2019/07/22 Python
pandas factorize实现将字符串特征转化为数字特征
2019/12/19 Python
Python 字符串处理特殊空格\xc2\xa0\t\n Non-breaking space
2020/02/23 Python
Lookfantastic阿联酋官网:英国知名美妆护肤购物网站
2020/05/26 全球购物
党员个人思想汇报
2013/12/28 职场文书
党支部四风整改方案
2014/10/25 职场文书
2015年先进个人自荐书
2015/03/24 职场文书
消费者投诉书范文
2015/07/02 职场文书
大学文艺委员竞选稿
2015/11/19 职场文书
数据库连接池
2021/04/06 MySQL
php+laravel 扫码二维码签到功能
2021/05/15 PHP
Redis安装使用RedisJSON模块的方法
2022/03/23 Redis