首页 > php教程 > php手册 > 正文

获取远程图片并保存的本地的方法实现

php中文网
发布: 2016-06-07 11:35:52
原创
1484人浏览过

根据图片的url,获取远程图片,利用curl进行图片的下载,并进行存储,最后返回图片的相关保存信息。
function getImage($url,$save_dir='',$filename='',$type=0){<br>             if(trim($url)==''){<br>                 return array('file_name'=&gt;'','save_path'=&gt;'','error'=&gt;1);<br>             }<br>             if(trim($save_dir)==''){<br>                 $save_dir='./';<br>             }<br>             if(trim($filename)==''){//保存文件名<br>                 $ext=strrchr($url,'.');<br>             if($ext!='.gif'&amp;&amp;$ext!='.jpg'&amp;&amp;$ext!='.png'&amp;&amp;$ext!='.jpeg'){<br>                 return array('file_name'=&gt;'','save_path'=&gt;'','error'=&gt;3);<br>             }<br>                 $filename=time().rand(0,10000).$ext;<br>             }<br>             if(0!==strrpos($save_dir,'/')){<br>                 $save_dir.='/';<br>             }<br>             //创建保存目录<br>             if(!file_exists($save_dir)&amp;&amp;!mkdir($save_dir,0777,true)){<br>                 return array('file_name'=&gt;'','save_path'=&gt;'','error'=&gt;5);<br>             }<br>             //获取远程文件所采用的方法<br>             if($type){<br>                 $ch=curl_init();<br>                 $timeout=5;<br>                 curl_setopt($ch,CURLOPT_URL,$url);<br>                 curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);<br>                 curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);<br>                 $img=curl_exec($ch);<br>                 curl_close($ch);<br>             }else{<br>                 ob_start();<br>                 readfile($url);<br>                 $img=ob_get_contents();<br>                 ob_end_clean();<br>             }<br>             //$size=strlen($img);<br>             //文件大小<br>             $fp2=@fopen($save_dir.$filename,'a');<br>             fwrite($fp2,$img);<br>             fclose($fp2);<br>             unset($img,$url);<br>             return array('file_name'=&gt;$filename,'save_path'=&gt;$save_dir.$filename,'error'=&gt;0);<br>         }

AD:真正免费,域名+虚机+企业邮箱=0元

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门推荐
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号