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

yipeiwu_com5年前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下获取http状态的实现代码

逐风整理了两种方式,大家可以自行参考/使用: 复制代码 代码如下:#方式一$ch = curl_init('//www.jb51.net');curl_setopt($ch, CURL...

php实现Session存储到Redis

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

PHP打印输出函数汇总

本篇文章一直来学习PHP中所有用于输出信息的函数,分类比较来学习其相同点与不同点,掌握日常开发中必备的技巧。 开发就一定需要调试代码,而PHP调试代码不能像iOS那种编译器语言可以通过X...

PHP实现的函数重载功能示例

本文实例讲述了PHP实现的函数重载功能。分享给大家供大家参考,具体如下: 由于PHP是弱类型语言,因此函数的输入参数类型无法确定(可以使用类型暗示,但是类型暗示无法用在诸如整型,字符串之...

PHP文件锁函数flock()详细介绍

文件操作系统是在网络环境下完成的,可能有多个客户端用户在同一个时刻对服务器上的同一个文件访问。当这种并发访问产生时,很可能会破坏文件中。例如一个用户正在向文件中写入数据,当还没有写完时,...