3
回答
PHP中批量处理mysql字段内容,再重新插进去,要怎样处理!在线等
【寻找人气王】邀新用户免费体验华为云服务,百元话费等你拿!   

请大神赐教:

数据库有几万条数据;字段中有远程图片地址,现在要把远程图片下载下来,保存路径重新插入到这个字段中,应该怎样循环执行,实现这一过程,请大神赐教:

<?php
$db->query("SELECT aid,imag FROM table WHERE id='1295'");
while($r = $db->fetch_array($query)){
$aid=$r['id'];
$m=$r['imag'];
$e=stristr($m,"#");
$s = str_replace("$e","",$m);
$img=GrabImage($s,$aid);//处理下载远程图片,并生成名称
$surl ="userfiles/image/pic/$img";//保存地址
$nurl=$surl.$e;//细节参数
if($img){ 
$db->query("UPDATE table set imag=$nurl where id=$aid");
//echo $nurl;//输出正常
}else{ 
//$db->query("UPDATE table set imag='' where id=$aid");
echo "false"; 
} 
}
function GrabImage($url,$filename) { 
if($url=="") return false; 
$ext=strrchr($url,"."); 
if($ext!=".gif" && $ext!=".jpg" && $ext!=".png") return false; 
if($filename==""){ 
$filename=date("YmdHis").$ext; 
}else{$filename=$filename.$ext; }
ob_start(); 
readfile($url); 
$img = ob_get_contents(); 
ob_end_clean(); 
$size = strlen($img); 
$fp2=@fopen(userfiles."/".image."/".cbaike."/".$filename, "a"); 
fwrite($fp2,$img); 
fclose($fp2); 
return $filename; 
} 
?>



举报
潇洒老哥
发帖于5年前 3回/340阅
顶部