用php实现的下载css文件中的图片的代码

 更新时间:2010年02月08日 08:31:02   作者:  
非常有创意的利用php获取css中图片地址并实现下载的代码。
作为一个资深并且专业的扒皮人员,在我从初三开始投入伟大的互联网中到现在积累了丰富的扒皮经验。我相信每个做web的程序员也都会有类似的经历。

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

< ?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
set_time_limit ( 0 );
$styleFileContent = file_get_contents ( 'http://img.jb51.net/skin/newblue/main.css' );
preg_match_all ( "/url\((.*)\)/", $styleFileContent, $imagesURLArray );
$imagesURLArray = array_unique ( $imagesURLArray [1] );
foreach ( $imagesURLArray as $imagesURL ) {
$dir=dirname($imagesURL);
if(!file_exists($dir))
{
//创建目录
createDir($dir);
}
$imagesURL='https://www.jb51.net/'.$imagesURL;
file_put_contents ( basename ( $imagesURL ), file_get_contents ( $imagesURL ) );
}

function createDir($path) {
$path = str_replace('\\','/',$path) ;
if ( is_dir($path) ) return true ;
if ( file_exists($path) ) return false ;

$parent = substr($path ,0, strrpos($path,'/') ) ;
if ( $parent==='' || $parent==='.' || createDir( $parent ) )
return @mkdir($path) ;
else return false ;
}
?>

相关文章

  • 一个漂亮的php验证码类(分享)

    一个漂亮的php验证码类(分享)

    下面小编就为大家分享一个漂亮的php验证码类。需要的朋友可以过来参考下
    2013-08-08
  • DOM XPATH获取img src值的query

    DOM XPATH获取img src值的query

    php中用DOM XPATH获取img src值的代码,需要的朋友可以参考下
    2013-09-09
  • php继承的一个应用

    php继承的一个应用

    正在尝试自己写一个博客系统,想当浏览文章的时候,有些操作是只有作者才有权限进行,比如删除,编辑更新文章。
    2011-09-09
  • php处理复杂xml数据示例

    php处理复杂xml数据示例

    这篇文章主要介绍了php处理复杂xml数据的方法,结合实例形式分析了php针对xml格式数据的读取、载入、遍历、运算等相关操作技巧,需要的朋友可以参考下
    2016-07-07
  • PHP调用FFMpeg实现音视频操作的示例详解

    PHP调用FFMpeg实现音视频操作的示例详解

    这篇文章主要为大家详细介绍了PHP如何调用FFMpeg实现简单的音视频操作,文中的示例代码讲解详细,具有一定的学习价值,感兴趣的小伙伴可以了解下
    2023-10-10
  • PHP数据库调用类调用实例(详细注释)

    PHP数据库调用类调用实例(详细注释)

    PHP开发中我们经常需要用一些数据库类,这里简单的分享下调用类的代码,学习php数据库操作的朋友可以参考下
    2012-07-07
  • php实现递归的三种基本方式

    php实现递归的三种基本方式

    这篇文章主要介绍了php实现递归的三种基本方法,包括利用引用做参数,利用全局变量,利用静态变量来实现递归,并附上了相关示例,最后给大家一个演示,涉及php的递归操作技巧,需要的朋友可以参考下
    2015-08-08
  • php下正则来匹配dede模板标签的代码

    php下正则来匹配dede模板标签的代码

    用正则来匹配dede的标签,对于以后想实现dedecms那样的模板标签的朋友与想研究dedecms模板标签的朋友可以参考下。
    2010-08-08
  • PHP如何利用P3P实现跨域

    PHP如何利用P3P实现跨域

    在开发中,我们碰到的跨域主要还是纠结在IE,页面中的IFRAME或者FRAME或者JS跨域的时候,IE有安全策略限制页面不带cookie,但是如果我们加上P3P,就没有这策略的限制。这也是P3P来突破跨域的可行前提
    2013-08-08
  • PHP单例模式数据库连接类与页面静态化实现方法

    PHP单例模式数据库连接类与页面静态化实现方法

    这篇文章主要介绍了PHP单例模式数据库连接类与页面静态化实现方法,涉及php面向对象单例模式数据库连接类的定义与使用方法,以及缓存实现页面静态化相关操作技巧,需要的朋友可以参考下
    2019-03-03

最新评论