- php教程首页
- php类库
php获取CSS文件中图片地址下载保存到本地
•php类库•阅读 472 - /**
- * 获取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.phpfensi.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');