用php实现的获取网页中的图片并保存到本地的代码

2015-01-24信息快讯网

将网页中图片保存本地文件夹

<?php 
header("Content-type:image/jpeg"); 
function read_url($str) 
{ 
$file=fopen($str,"r"); 
while(!feof($file)) 
{ 
$result.=fgets($file,9999); 
} 
fclose($file); 
return $result; 

} 

function save_img($str) 
{ 
$result=read_url($str); 
$result=str_replace("\"","",$result); 
$result=str_replace("\'","",$result); 

preg_match_all('/<img\ssrc=(http:\/\/.*?)(\s(.*?)>|>)/i',$result,$matches); 

foreach($matches[1] as $value) 
{ 
echo $value."<br>\n"; 
//GrabImage($value,$filename=""); 
} 
} 

// $url 是远程图片的完整URL地址,不能为空。 
// $filename 是可选变量: 如果为空,本地文件名将基于时间和日期 
// 自动生成. 

function GrabImage($url,$filename="") { 
if($url==""):return false;endif; 

$path="download/"; //指定存储文件夹 

//若文件不存在,则创建; 
if(!file_exists($path)){ 
mkdir($path); 
} 

if($filename=="") { 
$ext=strrchr($url,"."); 
if($ext!=".gif" && $ext!=".jpg"):return false;endif; 
$filename=$path.date("dMYHis").$ext; 
} 

ob_start(); 
readfile($url); 
$img = ob_get_contents(); 
ob_end_clean(); 
$size = strlen($img); 

$fp2=@fopen($filename, "a"); 
fwrite($fp2,$img); 
fclose($fp2); 

return $filename; 
} 
save_img("http://www.jb51.net"); 
?> 
©2014-2024 dbsqp.com