自動抓取 CSS 中的圖片 URL 並下載儲存到指定目錄。
class getInCssImage {
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 = "https://www.xxxx.com/" . $image; // 替換為實際域名
readfile($imageUrl);
$img = ob_get_contents();
ob_end_clean();
$localImage = $dir . strchr($image, '/');
$fp = fopen($localImage, 'a');
fwrite($fp, $img);
fclose($fp);
}
}
}
$content = getInCssImage::saveImage('/css/css.css', 'image');
$patterns 需依 CSS 中圖片路徑格式調整$imageUrl 域名需替換為實際圖片伺服器ob_start() 暫存輸出再寫入檔案適用於網站遷移、CDN 同步、離線封存等場景。