php下载网络图片到服务器

/**

  * 下载二维码到服务器

  * @param string $url 图片路径

  * @param string $filestring 要保存的文件名

  */
    private function DownLoadPic($url,$filestring){
        if($url == ""){
            return false;
        }
        $filename = $filestring.‘.jpg‘;
        // 检查路径是否存在,如不存在则创建
        $dir = ‘./upload/qrcode/‘;
        if (!is_dir($dir)){
            //第三个参数是“true”表示能创建多级目录,iconv防止中文目录乱码
            $res=mkdir(iconv("UTF-8", "GBK", $dir),0777,true);
        }
        ob_start();
        readfile($url);
        $img=ob_get_contents();
        ob_end_clean();
        $size=strlen($img);
        $fp2=fopen(‘./upload/qrcode/‘.$filename,"a");
        if(fwrite($fp2,$img) === false){
            $this->ErrorLogger(‘dolwload image falied. Error Info: 无法写入图片‘.date(‘Y-m-d H:i:s‘));
            exit();
        }
        fclose($fp2);
        return ‘/upload/qrcode/‘.$filename;
    }

private function ErrorLogger($errMsg){
        $logger = fopen(‘./ErrorLog.txt‘, ‘a+‘);
        fwrite($logger, date(‘Y-m-d H:i:s‘)." Error Info : ".$errMsg."\r\n");
    }

时间: 2024-12-15 07:12:25

php下载网络图片到服务器的相关文章

iOS 用GCD下载网络图片方法

用多线程下载网络图片会导致重复下载浪费流量的问题. 以免出现以上情况,用多线程下载图片方法可以用以下方法. 1.创建一个字典,如果下载了该图片则将用图片地址为key,图片为value保存. 2.创建一个字典,如果子线程已开始下载则用图片地址为key,图片地址为value保存. 3.如果正在下载中,显示占位图片 4.如果字典中有下载的图片,则刷新图片 //属性 @interface ViewController () @property (weak, nonatomic) IBOutlet UII

Android实战简易教程-第七十一枪(异步网络下载网络图片及图片廊制作)

首先来实现异步下载网络图片,布局文件如下: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_pare

android下载网络图片并缓存

异步下载网络图片,并提供是否缓存至内存或外部文件的功能 异步加载类AsyncImageLoader public void downloadImage(final String url, final ImageCallback callback); public void downloadImage(final String url, final boolean cache2Memory, final ImageCallback callback); public void setCache2F

Android 下载网络图片保存到本地

通过网络地址获取网络图片,点击下载将图片显示出来,然后点击图片将图片保存到本地. 首先需要在manifest上添加一些权限: [java] view plain copy <!-- 访问网络的权限 --> <uses-permission android:name="android.permission.INTERNET" /> <!-- 文件读取的权限 --> <uses-permission android:name="andro

ListView中使用ImageLoader框架下载网络图片显示

首先,ListView中如何下载文字和图片,大家可以看看本人之前的blog ListView获取网络数据显示. 所以这里关于首次如何下载xml数据,绑定适配器等就不更详细有了,主要是分享如何在ListView中使用ImageLoader这个开源框架如下载图片. 首先介绍一下ImageLoader.用户在快速拖动的时候容易出现卡顿的现象,可能下载不及时完全,然后有时候会可能出现显示错误的item的ImageView等问题,使用开源框架ImageLoader就可以较好的控制这个问题. 首先,使用Im

Nginx下载服务生产服务器调优

一.内存调优 内核关于内存的选项都在/proc/sys/vm目录下. 1.pdflush,用于回写内存中的脏数据到硬盘.可以通过 /proc/sys/vm/vm.dirty_background_ratio调整. 首先查看这个值默认应该是10. [[email protected] ~]# cat /proc/sys/vm/dirty_background_ratio 10 这个值是一个阀值,说明如果内存中的脏数据达到系统总内存的10%时,那么pdflush进程就会启动,将内存中的脏数据写回硬盘

thinkphp微信开发之jssdk图片上传并下载到本地服务器

随便写个方法 public function test2(){ $Weixin = new \Weixin\Controller\BaseController(); $this->assign('signPackage', $Weixin->jssdk->GetSignPackage()); $this->display(); } test2.html核心代码 <script type="text/javascript" src="__STATI

下载网络图片到图库

代码介绍:首先开启一个线程请求网络图片,图片下载成功之后保存到相册中.代码简单易懂. @implementation ViewController { NSData *data; } - (void)viewDidLoad { [super viewDidLoad]; UIImageView *imageview=[[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 300, 200)]; [imageview setBackgroundColor

如何下载安装SCCM服务器时所需的必须软件?

?Lander Zhang 专注外企按需IT基础架构运维服务,IT Helpdesk 实战培训践行者http://blog.51cto.com/lander 2018/08/27 8:15 问题描述 在安装SCCM服务器时,需要安装一些必要的组件,默认是需要联网下载的.在实际生产环境,SCCM服务器不一定允许访问外网,就算能访问外网,在线下载的话不仅影响安装效率,也会占用额外的网络带宽. 解决方式 我们可以提前在一台可以访问外网的电脑上提前下载好.1.在这台可以上外网的电脑上运行SCCM安装程序