本文實例講述了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程序設計有所幫助。