当前位置: 首页 > 后端技术 > PHP

PHP通过url下载图片界面

时间:2023-03-29 23:49:12 PHP

'0','msg'=>'参数错误');exit(json_encode($res));}else{getImage($url,$save_dir='../assets/img',$filename='',$type=0);}/**功能:php完美实现下载远程图片并保存到本地*参数:文件url,保存文件目录,保存文件名,使用Download方法*当保存的文件名为空时,使用远程文件的原名*/functiongetImage($url,$save_dir,$filename,$type=0){if(trim($save_dir)==''){$save_dir='./';}if(trim($filename)==''){//保存文件名$ext=strrchr($url,'.');如果($ext!='.gif'&&$ext!='.jpg'&&$ext!='.jpge'&&$ext!='.png'){$res=array('code'=>'0','msg'=>'格式错误');退出(json_encode($res));}$文件名=时间()。$分机;}if(0!==strrpos($save_dir,'/')){$save_dir.='/';}//创建保存目录if(!file_exists($save_dir)&&!mkdir($save_dir,0777,true)){$res=array('code'=>'0','msg'=>'目录权限错误');退出(json_encode($res));}//获取远程文件的方法if($type){$ch=curl_init();$超时=5;curl_setopt($ch,CURLOPT_URL,$url);curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);$img=curl_exec($ch);curl_close($ch);}else{ob_start();读取文件($url);$img=ob_get_contents();ob_end_clean();}//$size=strlen($img);//文件大小$fp2=@fopen($save_dir.$filename,'a');fwrite($fp2,$img);fclose($fp2);取消设置($img,$url);$res=array('链接'=>'http://本地主机/api/资产/img/'。$文件名);退出(json_encode($res));}