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


Posted in PHP onFebruary 08, 2010

作为一个资深并且专业的扒皮人员,在我从初三开始投入伟大的互联网中到现在积累了丰富的扒皮经验。我相信每个做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.3water.com/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://3water.com/'.$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 相关文章推荐
用Json实现PHP与JavaScript间数据交换的方法详解
Jun 20 PHP
浅析虚拟主机服务器php fsockopen函数被禁用的解决办法
Aug 07 PHP
CI框架中集成CKEditor编辑器的教程
Jun 09 PHP
php邮件发送的两种方式
Apr 28 PHP
php发送短信验证码完成注册功能
Nov 24 PHP
thinkphp3.x中display方法及show方法的用法实例
May 19 PHP
php mongodb操作类 带几个简单的例子
Aug 25 PHP
PHP二维数组去重实例分析
Nov 18 PHP
php实现每日签到功能
Nov 29 PHP
phpinfo无法显示的原因及解决办法
Feb 15 PHP
redis+php实现微博(一)注册与登录功能详解
Sep 23 PHP
在laravel5.2中实现点击用户头像更改头像的方法
Oct 14 PHP
php不用内置函数对数组排序的两个算法代码
Feb 08 #PHP
Linux下将excel数据导入到mssql数据库中的方法
Feb 08 #PHP
PHPWind 发帖回帖Api PHP版打包下载
Feb 08 #PHP
php cli 方式 在crotab中运行解决
Feb 08 #PHP
用js进行url编码后用php反解以及用php实现js的escape功能函数总结
Feb 08 #PHP
Zend framework处理一个http请求的流程分析
Feb 08 #PHP
PHP函数常用用法小结
Feb 08 #PHP
You might like
4.与数据库的连接
2006/10/09 PHP
php获取地址栏信息的代码
2008/10/08 PHP
php生成的html meta和link标记在body标签里 顶部有个空行
2010/05/18 PHP
10 个经典PHP函数
2013/10/17 PHP
php实现表单多按钮提交action的处理方法
2015/10/24 PHP
Ubuntu VPS中wordpress网站打开时提示”建立数据库连接错误”的解决办法
2016/11/03 PHP
PHP-FPM运行状态的实时查看及监控详解
2016/11/18 PHP
Thinkphp结合ajaxFileUpload实现异步图片传输示例
2017/03/13 PHP
jQuery源码分析-05异步队列 Deferred 使用介绍
2011/11/14 Javascript
JavaScript中将一个值转换为字符串的方法分析[译]
2012/09/21 Javascript
AngularJS手动表单验证
2016/02/01 Javascript
使用snowfall.jquery.js实现爱心满屏飞的效果
2017/01/05 Javascript
有关JS中的0,null,undefined,[],{},'''''''',false之间的关系
2017/02/14 Javascript
原生JS仿QQ阅读点击展开、收起效果
2017/03/08 Javascript
Vue项目路由刷新的实现代码
2019/04/17 Javascript
Vue中的this.$options.data()和this.$data用法说明
2020/07/26 Javascript
python实现图像识别功能
2018/01/29 Python
python使用pycharm环境调用opencv库
2018/02/11 Python
Python基于百度AI的文字识别的示例
2018/04/21 Python
Python Pandas数据结构简单介绍
2019/07/03 Python
kali中python版本的切换方法
2019/07/11 Python
基于python分析你的上网行为 看看你平时上网都在干嘛
2019/08/13 Python
Python命名空间及作用域原理实例解析
2020/08/12 Python
html5页面结构_动力节点Java学院整理
2017/07/10 HTML / CSS
美国著名的女性内衣零售商:Frederick’s of Hollywood
2018/02/24 全球购物
会计专业毕业生自荐信范文
2013/12/20 职场文书
报关员个人职业生涯规划书
2014/03/12 职场文书
事业单位考核材料
2014/05/21 职场文书
煤矿安全协议书
2014/08/20 职场文书
如何写股份合作协议书
2014/09/11 职场文书
五好文明家庭事迹材料
2014/12/20 职场文书
经典爱情感言
2015/08/03 职场文书
初中语文教学随笔
2015/08/15 职场文书
礼貌问候语大全
2015/11/10 职场文书
python编程项目中线上问题排查与解决
2021/11/01 Python
Window server中安装Redis的超详细教程
2021/11/17 Redis