php采集文章中的图片获取替换到本地(实现代码)


Posted in PHP onJuly 08, 2013
/**
 * 获取替换文章中的图片路径
 * @param string $xstr 内容
 * @param string $keyword 创建照片的文件名
 * @param string $oriweb 网址
 * @return string
 * 
 */
function replaceimg($xstr,$keyword, $oriweb){     //保存路径
    $d = date('Ymd', time());
    $dirslsitss = '/var/www/weblist/uploads/'.$keyword.'/'.$d;//分类是否存在
    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 = "/uploads/$keyword"."/".$d."/".$fileimgname;
            
            $xstr=str_replace($imgurl,$saveimgfile,$xstr);
        }
    }
    return $xstr;
}
PHP 相关文章推荐
PHP入门速成教程
Mar 19 PHP
php安全配置 如何配置使其更安全
Dec 16 PHP
php的大小写敏感问题整理
Dec 29 PHP
深入php self与$this的详解
Jun 08 PHP
php中$美元符号与Zen Coding冲突问题解决方法分享
May 28 PHP
php实现mysql事务处理的方法
Dec 25 PHP
简单解决新浪SAE无法上传文件的问题
May 13 PHP
thinkPHP实现MemCache分布式缓存功能
Mar 23 PHP
php中preg_replace_callback函数简单用法示例
Jul 21 PHP
利用PHP绘图函数实现简单验证码功能的方法
Oct 18 PHP
[原创]PHP正则删除html代码中a标签并保留标签内容的方法
May 23 PHP
PHP开发之归档格式phar文件概念与用法详解【创建,使用,解包还原提取】
Nov 17 PHP
php打开文件fopen函数的使用说明
Jul 05 #PHP
解析PHP中$_FILES的使用以及注意事项
Jul 05 #PHP
如何利用PHP执行.SQL文件
Jul 05 #PHP
PHP session_start()问题解疑(详细介绍)
Jul 05 #PHP
浅析PHP安装扩展mcrypt以及相关依赖项(PHP安装PECL扩展的方法)
Jul 05 #PHP
PHP仿博客园 个人博客(2) 数据库增添改删
Jul 05 #PHP
浅析PHP的ASCII码转换类
Jul 05 #PHP
You might like
改变Apache端口等配置修改方法
2008/06/05 PHP
PHP获取文件的MD5值并判断是否被修改的例子
2014/06/19 PHP
php实现文件上传基本验证
2020/03/04 PHP
Javascript中的常见排序算法
2007/03/27 Javascript
jquery控制select的text/value值为选中状态
2014/06/03 Javascript
javascript实现禁止复制网页内容
2014/12/16 Javascript
JavaScript识别网页关键字并进行描红的方法
2015/11/09 Javascript
Google 爬虫如何抓取 JavaScript 的内容
2017/04/07 Javascript
Vue中如何实现轮播图的示例代码
2017/07/27 Javascript
javascript 日期相减-在线教程(附代码)
2017/08/17 Javascript
Node.js 使用流实现读写同步边读边写功能
2017/09/11 Javascript
详解Vue中watch的高级用法
2018/05/02 Javascript
vue车牌号校验和银行校验实战
2019/01/23 Javascript
vue路由跳转传参数的方法
2019/05/06 Javascript
vue-i18n结合Element-ui的配置方法
2019/05/20 Javascript
JS实现的排列组合算法示例
2019/07/16 Javascript
[01:02]DOTA2上海特锦赛SHOWOPEN
2016/03/25 DOTA
pyside写ui界面入门示例
2014/01/22 Python
python中list循环语句用法实例
2014/11/10 Python
python中子类继承父类的__init__方法实例
2016/12/15 Python
pandas数据处理基础之筛选指定行或者指定列的数据
2018/05/03 Python
python选取特定列 pandas iloc,loc,icol的使用详解(列切片及行切片)
2019/08/06 Python
django多文件上传,form提交,多对多外键保存的实例
2019/08/06 Python
Python selenium模拟手动操作实现无人值守刷积分功能
2020/05/13 Python
Python创建简单的神经网络实例讲解
2021/01/04 Python
CSS3 Backgrounds属性相关介绍
2011/05/11 HTML / CSS
Html5踩坑记之mandMobile使用小记
2020/04/02 HTML / CSS
乌克兰鞋类购物网站:Eobuv.com.ua
2020/11/28 全球购物
服装公司总经理岗位职责
2013/11/30 职场文书
预备党员入党思想汇报
2014/01/04 职场文书
三年级科学教学反思
2014/01/29 职场文书
优秀员工评语
2014/02/10 职场文书
《春天来了》教学反思
2014/04/07 职场文书
质量负责人任命书
2014/06/06 职场文书
2015新学期校长寄语(3篇)
2015/03/25 职场文书
2019自荐信范文集锦!
2019/07/03 职场文书