> 这样是使用了完整的路径了,而不是想其他的一样是 /img/1.gif 或者 img/1.gif。
> 所以单独判断一下,然后接着判断这两个,看看是 /img/1.gif 还是 img/1.gif。
if (preg_match('/^http.*/',$val)) { $target = $val; }
else if (preg_match('/^/.*/',$val)) { $target=$host.$val; }
else { $target=$url.$val; }
echo $target."<br/>rn";
> 最后把文件名取出来,即 /img/1.gif 中的 1.gif,用于保存文件。
preg_match('/.*/(.*.D+)$/',$val,$name);
> 然后咱们就可以开始下载了,这里要介绍一个强大的 Copy 函数用法。
if (!is_file('./img/'.$name[1])) {
$imgc = file_get_contents($target);
$handle = fopen('./img/'.$name[1],'w+');
fwrite($handle,$imgc);
fclose($handle);
}
> 上面那个是咱们的老方法了,嘎嘎,很麻烦。某次,小邪突然发现 Copy 的强大。
> Copy 居然也可以下载,所以可以轻松使用下面的代码来处理,上面的可以退休鸟。
if (!is_file('./img/'.$name[1])) {
copy($target,'./img/'.$name[1]);
}
> 5. 完整源代码:
> 使用的时候把 $url 填好即可,然后把所有 CSS 内容存到 abc.css 中即可。
<?php
$url = '//www.jb51.net/css/';
$data = file_get_contents('abc.css');
preg_match('/(.*//.*?)//',$url,$host);
$host = $host[1];
if (!is_dir('img')) { mkdir('img'); }
$regex = '/url('{0,1}"{0,1}(.*?)'{0,1}"{0,1})/';
preg_match_all($regex,$data,$result);
foreach ($result[1] as $val) {
if (preg_match('/^http.*/',$val)) { $target = $val; }
else if (preg_match('/^/.*/',$val)) { $target=$host.$val; }
else { $target=$url.$val; }
echo $target."<br/>rn";
preg_match('/.*/(.*.D+)$/',$val,$name);
if (!is_file('./img/'.$name[1])) {
copy($target,'./img/'.$name[1]);
}
}?>







