php获取CSS文件中图片地址并下载到本地的方法

yipeiwu_com7年前PHP代码库

本文实例讲述了php获取CSS文件中图片地址并下载到本地的方法。分享给大家供大家参考。

具体实现代码如下:

复制代码 代码如下:

/** 
* 获取CSS中图片地址,并且保存到本地 
*/
class getInCssImage
{   
        /** 
         *  图片保存下来
         * @param $cssUrl css的url地址
         * @param $dir 保存图片的目录
         * @return void
         */
        static public function saveImage($cssUrl, $dir)
        {   
            $content = file_get_contents($cssUrl);  
            $patterns = '/images(.*).(jpg|gif|png)/'; //正则根据不同地址需要变换
            preg_match_all($patterns, $content, $matches);
            $imagesUrls = $matches[0];
            if (!is_dir($dir))
                mkdir(dirname(__FILE__). '/'. $dir, 0777);
            foreach($imagesUrls as $image)
            {   
                ob_start();
                $imageUrl = "http://www.xxxx.com/".$image; //这个地址填入你想要抓取的地址
                readfile($imageUrl);
                $img  = ob_get_contents();
                ob_end_clean();
                $size = strlen($img);
                $localImage = $dir. strchr($image, '/'); //存到本地的图片地址
                $fp = fopen($localImage, 'a');
                fwrite($fp, $img);
                fclose($fp);
            }   
        }   
}
$content = getInCssImage::saveImage('/css/css.css', 'image');

希望本文所述对大家的PHP程序设计有所帮助。

相关文章

php中访问修饰符的知识点总结

为什么需要访问权限? 防止覆盖变量名称和函数名称 我们下来看一下public的使用,public是可以从任何地方访问的最广泛的访问限定符。 假设A先生开发overlapFuncBase,...

PHP串行化与反串行化实例分析

PHP串行化与反串行化实例分析

本文实例讲述了PHP串行化与反串行化。分享给大家供大家参考,具体如下: 对象也是一种在内存中存储的数据类型,他的寿命通常随着生成该对象的程序的终止而终止。有时候可能需要把对象的状态保存下...

PHP使用xpath解析XML的方法详解

本文实例讲述了PHP使用xpath解析XML的方法。分享给大家供大家参考,具体如下: XML文件在PHP网站开发的轻量级应用中使用非常广泛,而PHP解析和读取XML文件的方式有很多种,比...

PHP游戏编程25个脚本代码

清单 1.简单的掷骰器 许多游戏和游戏系统都需要骰子。让我们先从简单的部分入手:掷一个六面骰子。实际上,滚动一个六面骰子就是从 1 到 6 之间选择一个随机数字。在 PHP 中,这十分简...

php实现Session存储到Redis

对于大访问量的站点使用默认的Session 并不合适,我们可以将其存入数据库、或者使用Redis KEY-VALUE数据存储方案 首先新建一个session表 CREATE TAB...