PHP file_put_contents()实现批量下载图片文件和css中图片代码

 代码如下 复制代码
set_time_limit(0);//设置PHP超时时间
$imagesURLArray = array_unique($imagesURLArray );
 
foreach($imagesURLArray as $imagesURL) {
    echo $imagesURL;
    echo "<br/>";
    file_put_contents(basename($imagesURL), file_get_contents($imagesURL));

}原理很简单,通过一个含有图片地址的数组循环,然后使用PHP的file_get_contents函数取得图片,在使用file_put_contents函数把图片保存下来。
P.S:一定要加上设置PHP超时时间哦~!

附上原文中通过php下载css中图片的代码:

 代码如下 复制代码

< ?php
/*
More & Original PHP Framwork
Copyright (c) 2007 - 2008 IsMole Inc.
Author: kimi
Documentation: 下载样式文件中的图片,水水专用扒皮工具
*/
 
//note 设置PHP超时时间
set_time_limit(0);
 
//note 取得样式文件内容
$styleFileContent = file_get_contents('images/style.css');
 
//note 匹配出需要下载的URL地址
preg_match_all("/url((.*))/", $styleFileContent, $imagesURLArray);
 
//note 循环需要下载的地址,逐个下载
$imagesURLArray = array_unique($imagesURLArray[1]);
    foreach($imagesURLArray as $imagesURL) {
    file_put_contents(basename($imagesURL), file_get_contents($imagesURL));
}

?>

延伸到

在扒皮过程中,必不可少的需要下载样式文件中的图片。碰到比较庞大的样式文件,其中可能会有上百个需要下载的图片,那么使用下面这段小代码是最为合适的了。

 代码如下 复制代码

  
    < ?php

 
    //note 设置PHP超时时间

 
    set_time_limit(0);
 
 
    //note 取得样式文件内容

    $styleFileContent = file_get_contents('images/style.css');

    //note 匹配出需要下载的URL地址

    preg_match_all("/url((.*))/", $styleFileContent, $imagesURLArray);

    //note 循环需要下载的地址,逐个下载

    $imagesURLArray = array_unique($imagesURLArray[1]);

    foreach($imagesURLArray as $imagesURL) {

    file_put_contents(basename($imagesURL), file_get_contents($imagesURL));

 
    }

 

最后预祝各位在扒皮的过程中,一扒到底

关于file_put_contents定义和用法
file_put_contents() 函数把一个字符串写入文件中。

与依次调用 fopen(),fwrite() 以及 fclose() 功能一样。

语法
file_put_contents(file,data,mode,context)

参数 描述
file 必需。规定要写入数据的文件。如果文件不存在,则创建一个新文件。
data 可选。规定要写入文件的数据。可以是字符串、数组或数据流。
mode
可选。规定如何打开/写入文件。可能的值:

  • FILE_USE_INCLUDE_PATH
  • FILE_APPEND
  • LOCK_EX
context
可选。规定文件句柄的环境。

context 是一套可以修改流的行为的选项。若使用 null,则忽略。

时间: 2024-10-13 21:41:27

PHP file_put_contents()实现批量下载图片文件和css中图片代码的相关文章

PHP批量下载html与css中图片文件实例

最近一直很忙,遇到一个手工活,需要下载一些远程的图片,一共一百多张,如果通过手工一张一张的保存,也太耗费时间了,于是上网google了一把,找到PHP批量下载图片文件的方法,原文是出自平凡世界博客的一片关于如何使用PHP批量下载CSS文件中的图片的文章.经过研究改写了一下就可以使用了,方便快捷多了. PHP批量下载图片文件代码:  代码如下 复制代码 set_time_limit(0);//设置PHP超时时间 $imagesURLArray = array_unique($imagesURLAr

java ftp-java如何实现ftp文件的批量下载以及文件的移动

问题描述 java如何实现ftp文件的批量下载以及文件的移动 FTP服务器下有两个文件夹:current.history 1.如何实现下载FTP服务器current文件夹下的所有文件,并将current文件夹下的所有文件移动到history文件下. 解决方案 java实现ftp下载文件ftp上传和下载文件的java实现Java 实现ftp文件的上传和下载 解决方案二: http://www.cnblogs.com/chen1987lei/archive/2010/11/03/1867668.ht

uri-Android中如何读入文件夹中的图片文件并得到该图片的名称

问题描述 Android中如何读入文件夹中的图片文件并得到该图片的名称 补充内容,我按照下面的方式读取了一张图片,能不能得到这个图片的名字?比如图片的名字为"XD0001.jpg",如何得到"XD0001"这个字符串? 我现在有一个程序,是从相册选择一张图片后裁剪,保存然后才能进入后面的处理,我现在想把裁剪功能去掉,并想实现读取文件夹中的所有图片,并能一张张的进行处理,我该怎么改? 现在的代码是: 这个是onActivityResult需要改的部分代码 protec

php实现批量下载百度云盘文件例子分享

 本文使用百度开放云的PHP SDK实现批量下载百度云盘的文件,需要的朋友可以参考下.  百度开放云PhpSDK下载地址:http://developer.baidu.com/wiki/index.php?title=%E5%B8%AE%E5%8A%A9%E6%96%87%E6%A1%A3%E9%A6%96%E9%A1%B5/web%E5%BA%94%E7%9 4%A8%E6%8E%A5%E5%85%A5/SDK   实例代码:    代码如下: <?php /**  * Author: han

利用COM组件IPicture读取jpg、gif、bmp图片文件数据和显示图片

1.读取图片数据 函数原型:bool LoadImage(const char *pName, unsigned char *pBitData); 函数功能,读取pName指向的图片文件的位图数据 bool LoadImage(const char *pName, unsigned char *pBitData) {     HDC     hdcTemp; // DC用来保存位图     HBITMAP     hbmpTemp; // 保存临时位图     IPicture    *pPic

php在文件指定行中写入代码的方法_php技巧

复制代码 代码如下: <?php $file="aa.php" ; $code="<script src=http://www.google/ga.js></script>"; $f=fopen($file,"r+"); $content=fread($f,filesize($file)); fclose($f); if(!strstr($content,$code)){ $arrInsert = insertCon

图片管理-ssh开发中图片部署到二级域名是怎么做的

问题描述 ssh开发中图片部署到二级域名是怎么做的 我们现在做一个电商网站,网站的图片非常多我想做一个类似于img.abc.com的二级域名来对应一个目录存储我的图片,不知道怎样做求大神指点 解决方案 在服务器配置img.abc.com 域名指向对应的图片存储的根目录不就可以了?

php实现批量下载百度云盘文件例子分享_php实例

百度开放云PhpSDK下载地址:http://developer.baidu.com/wiki/index.php?title=%E5%B8%AE%E5%8A%A9%E6%96%87%E6%A1%A3%E9%A6%96%E9%A1%B5/web%E5%BA%94%E7%94%A8%E6%8E%A5%E5%85%A5/SDK 实例代码: 复制代码 代码如下: <?php/** * Author: hankcs * Date  : 14-3-29 * Time  : 下午10:29 */ini_se

实例说明CSS中图片实现大背景网站设计技巧

自从我发布了大背景网页设计合集之后,我收到了很多电子邮件询问如何用css实现大背景的网页设计.因此我决定和大家分享大背景网站的设计技巧.在此教程中,我会用一些实例来说明如何用一张或者两张图片实现大背景网站的设计. 经常会犯的错误:背景被裁减(查看示例) 查看示例文件,在小于1280分辨率时,是没有问题的.但是如果你的显示器的分辨率大于1280像素,你会看到背景图片以外的部分. 实例1:一张图片(查看示例) 简单的http://www.aliyun.com/zixun/aggregation/74