欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php提取并下载css文件中图片地址

程序员文章站 2022-03-17 14:48:39
...
  1. /**
  2. * 获取CSS中图片地址,并且保存到本地
  3. */
  4. class getInCssImage
  5. {
  6. /**
  7. * 图片保存下来
  8. * @param $cssUrl css的url地址
  9. * @param $dir 保存图片的目录
  10. * @return void
  11. */
  12. static public function saveImage($cssUrl, $dir)
  13. {
  14. $content = file_get_contents($cssUrl);
  15. $patterns = '/images(.*).(jpg|gif|png)/'; //正则根据不同地址需要变换
  16. preg_match_all($patterns, $content, $matches);
  17. $imagesUrls = $matches[0];
  18. if (!is_dir($dir))
  19. mkdir(dirname(__FILE__). '/'. $dir, 0777);
  20. foreach($imagesUrls as $image)
  21. {
  22. ob_start();
  23. $imageUrl = "http://www.plcxue.com/".$image; //要抓取的地址
  24. readfile($imageUrl);
  25. $img = ob_get_contents();
  26. ob_end_clean();
  27. $size = strlen($img);
  28. $localImage = $dir. strchr($image, '/'); //存到本地的图片地址
  29. $fp = fopen($localImage, 'a');
  30. fwrite($fp, $img);
  31. fclose($fp);
  32. }
  33. }
  34. }
  35. $content = getInCssImage::saveImage('/css/css.css', 'image');
复制代码