php批量下载网络图片,php批量下载网页图片并替换路径为本地

一篇文章复制过来,发现图片路径都是别人网站的,如何一键下载这些图片到本地,并且修改成为本地的路径呢。

代码如下 复制代码

/**

* 获取替换文章中的图片路径

* @param string $xstr 内容 采集网页的content

* @param string $keyword 创建照片的文件名 我写upimg

* @param string $oriweb 网址 一般写null

* @return string

*

*/

function replaceimg($xstr,$keyword, $oriweb){

$basedir = dirname(__FILE__);

//保存路径

$d = date('Ym', time());

$dirslsitss = $basedir.'/../uploads/'.$keyword.'/'.$d;//分类是否存在

if(!is_dir($dirslsitss)) {

@mkdir($dirslsitss, 0777);

}

//匹配图片的src

    preg_match_all('#]*>#i', $xstr, $match);

foreach($match[1] as $imgurl){

(www.111cn.net)    $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;

}

from:

http://www.111cn.net/phper/php/50911.htm

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/442923.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php获取本机root,通过PHP执行root命令

慕村225694在尝试之前&#xff0c;请阅读整个文章&#xff0c;然后进行选择。使用二进制包装器(带有suid位)的解决方案1)创建一个脚本(最好是.sh)&#xff0c;其中包含要作为root用户运行的脚本。# cat > php_shell.sh < wrapper.c < #include #include int mai…

php位值,php中,如何取得一个整型值的低位和高位值?

整型值可以使用十进制&#xff0c;十六进制&#xff0c;八进制或二进制表示&#xff0c;前面可以加上可选的符号(- 或者 )。二进制表达的 integer 自 PHP 5.4.0 起可用。要使用八进制表达&#xff0c;数字前必须加上 0(零)。要使用十六进制表达&#xff0c;数字前必须加上 0x。…

java寂静岭 攻略,GBA版《寂静岭》HARRY篇图文流程攻略

“Play Novel: Silent Hill”是KONAMI于2001年3月21日在GBA上推出的一款文字冒险游戏&#xff0c;剧情内容取自同社的恐怖冒险游戏——Silent Hill(《寂静岭》)。游戏基本上是纯粹的文字冒险游戏&#xff0c;过程中穿插着几段动画CG作为过场&#xff0c;游戏中绝大部分的图片和…

php 实现百度坐标转换,PHP实现腾讯与百度坐标转换

废话不多说&#xff0c;直接上代码public function coordinate_switch($a,$b){//百度转腾讯坐标转换$x (double)$b - 0.0065;$y (double)$a - 0.006;$x_pi 3.14159265358979324;$z sqrt($x * $x$y * $y) - 0.00002 * sin($y * $x_pi);$theta atan2($y,$x) - 0.000003 * co…

实验一熟悉matlab环境,数字信号处理报告实验一:熟悉MATLAB环境.doc

数字信号处理报告实验一&#xff1a;熟悉MATLAB环境.doc实验一熟悉MATLAB环境一 实验目的1. 熟悉MATLAB的主要操作命令。2. 学会简单的矩阵输入和数据读写。3. 掌握简单的绘图命令。4. 用MATLAB编程并学会创建函数。5. 观察离散系统的频率响应。二 实验内容2.用MATLAB实现下列序…

MySQL中使用CASE出错,如何在MySQL中正确使用CASE..WHEN

如何在MySQL中正确使用CASE..WHEN这里是一个演示查询&#xff0c;注意它非常简单&#xff0c;仅在base_price为0的位置获取&#xff0c;并且仍然select条件3&#xff1a;SELECT CASE course_enrollment_settings.base_price WHEN course_enrollment_settings.base_price 0 THE…

matlab rootdir,Python cfg.ROOT_DIR属性代码示例

# 需要导入模块: from fast_rcnn.config import cfg [as 别名]# 或者: from fast_rcnn.config.cfg import ROOT_DIR [as 别名]def demo(net, image_name, classes):"""Detect object classes in an image using pre-computed object proposals.""&quo…

5g算法matlab怎么用,使用 MATLAB 开发 5G NR 设计

请选择其一AlabamaAlaska美属萨摩亚APO/FPO AAAPO/FPO AEAPO/FPO APArizonaArkansasCaliforniaCaroline IslandsColoradoConnecticutDelawareDistrict of ColumbiaFlorida格鲁吉亚关岛HawaiiIdahoIllinoisIndianaIowaKansasKentuckyLouisianaMaineMariana Islands马绍尔群岛Mar…

微擎cloud.mod.php,微擎“could not resolve ”、“could not resolve host”系列问题处理办法...

今天一个用户跟我说模块安装出现”could not resolve host:update.we10d.cn“报错&#xff0c;昨天在整理最近十个月用户搜索关键词排行的时候也发现”could not resolve host“、”could not resolve“还是占据不小的比例的。其实这类报错的处理方法大致相同&#xff0c;都是/…

php提交订单代码怎么写,提交代办订单示例代码

require curl.func.php;$appkey your_appkey_here;//你的appkey$illegalid 1333,1334;//违章ID$mobile 15158825888;$outorderno ;$appsecret your_appsecret_here;$queryarr array(mobile>$mobile,illegalid>$illegalid,outorderno>$outorderno);$sign makeSi…

基于matlab的信号与系统实例,华南理工大学信号与系统实验基于Matlab的信号处理实例...

第2讲基于Matlab的信号处理实例实验内容(1)(1) 读取给定的3D加速度信号文件&#xff0c;绘出信号波形&#xff1b;程序源代码&#xff1a;function sy2fid fopen(run 100m_TROUSERS POCKET_1_陈佳_1.txt,r);afscanf(fid,%d,%d,%d\n);fclose(fid);lenlength(a)/3;k1;for i1:len…

php qq接收不了,php imap接收qq邮件的问题

写一个接收邮件的代码&#xff0c;提示无法连接&#xff0c;qq邮箱已开启imap&#xff0c;下面贴上代码&#xff0c;麻烦各位帮忙看看&#xff1f;$host {imap.qq.com:993/imap/ssl}INBOX;$user *****;$pass *****;$inbox imap_open($host, $user, $pass)or die("cant…

oracle命令行打不开,关于oracle命令行上下左右键没法使用解决办法

使用rlwrap工具解决&#xff1a;sql1.下载安装readline和rlwrapvim//安装readlinebash[rootoracle opt]#wget ftp://ftp.gnu.org/gnu/readline/readline-6.2.tar.gzoracle[rootoracle opt]# tar xvf readline-6.2.tar.gzide[rootoracle opt]# cd readline-6.2工具[rootoracle r…

ora-01092: oracle 实例终止.强制断开连接,undo表空间故障特殊恢复(二)------ORA-01092: ORACLE 实例终止。强制断开连接...

原文出处&#xff1a;http://blog.csdn.net/wyzxg/archive/2010/09/10/5874726.aspxundo表空间故障特殊恢复(二)------ORA-01092: ORACLE 实例终止。强制断开连接这个测试的是instance recover(单实例里就是crash recovery)的恢复需要故障undo里的数据&#xff0c;一般的情况in…

php类如何变为静态调用,PHP类中静态方法如何调用非静态方法?_后端开发

php如何将字符串转成json_后端开发php将字符串转成json的方法是&#xff1a;可以通过json_encode()函数来实现。json_encode()函数用于对变量进行JSON编码&#xff0c;该函数如果执行成功&#xff0c;则返回JSON数据&#xff0c;反之则返回FALSE。PHP类中静态方法调用非静态方法…

java 简单获取Excel表格内容(初学者)

java 简单获取Excel表格内容&#xff08;初学者&#xff09; 代码&#xff1a; package cn.ccaih.read;import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.us…

PHP的注释标记是什么,html的注释标记是什么

html的注释标记是“”&#xff0c;用来在源文档中插入注释&#xff0c;注释的内容不会被显示在浏览器页面上。只有在文本编辑器中&#xff0c;或浏览器的“查看源代码”选项打开文档时&#xff0c;才能看到注释。本教程操作环境&#xff1a;windows7系统、HTML5版、Dell G3电脑…

java向Excel文件写入数据

package cn.ccaih.read;import org.apache.poi.xssf.usermodel.XSSFRow; import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook;import java.io.FileOutputStream; import java.io.IOException;/*** // * 向Excel文件写入数据*…

怎么查询oracle分页查询语句,Oracle分页查询sql语句

阿里无线前端性能优化指南 &lpar;Pt&period;1 加载优化&rpar;前言 阿里无线前端团队在过去一年对所负责业务进行了全面的性能优化.以下是我们根据实际经验总结的优化指南,希望对大家有所帮助. 第一部分仅包括数据加载期优化. 图片控制 对于网页特别是电商类页面来说…

三元运算符的使用

package Day03;/*** 第一题&#xff1a;* 定义 int a 5 b 3 c 8* 1、利用if语句获取最小值打印*/ public class Day03_Demo01 {public static void main(String[] args) {//1, 利用if语句获取最小值打印int a 5, b 3, c 8;Getmax(a, b, c);// * 2、利用三元运算符获取…