curl下载远程图片到服务器

 <?php
//curl下载远程图片到服务器 方法
     function download($url, $path = ‘images/‘){
    $ch = curl_init();
    $names = mt_rand(100000,999999);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
    $file = curl_exec($ch);
    curl_close($ch);
    $filename = pathinfo($url, PATHINFO_BASENAME);
    $lujing = $path . $names;
    if(!is_dir($lujing)){
        mkdir(iconv("UTF-8", "GBK", $lujing),0777,true);
    }
    //$resource = fopen($path . $names.‘/‘.$filename, ‘a‘);
   $info =  file_put_contents($path . $names.‘/‘.$filename,$file);
   if($info){
       return $path . $names.‘/‘.$filename;
   }

    //fwrite($resource, $file);
    //fclose($resource);
  }

原文地址:https://www.cnblogs.com/shenchanglu/p/11864853.html

时间: 2024-11-07 12:07:36

curl下载远程图片到服务器的相关文章

php通过curl下载远程图片实例

Java代码   <?php $url = 'http://mf1905.com/upload/video_img/df3074c98ec5124ad47c52ff59f74e04_middle.jpeg'; function http_get_data($url) { $ch = curl_init (); curl_setopt ( $ch, CURLOPT_CUSTOMREQUEST, 'GET' ); curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, 

dede不能下载远程图片及如何实现图片本地化的方法

有些时候我们想保存图片到本地服务器的时候发现保存不了,比如我们自己拷贝自己的站点到另外一个服务器等等,下面3A网络的小钱就来分享Dedecms无法保存远程图片到本地服务器的解决方法,分享给大家供大家参考.具体分析如下: 一.开启远程图片本地化 在编辑区域上方有个附加选项:下载远程图片和资源,把这个选上即可!也在可以在系统设置里面的其他选项把:远程图片本地化这个项目给选上! 二.检查网站目录 上传图片目录中是否有allimg这个文件夹(当更改了图片上传目录的情况下最容易出现这个问题) 三.可能是因

织梦dedecms 无法下载远程图片 fsockopen函数被禁用的解决方法

在linux服务器上fsockopen()函数被无情的禁用了(这其实是出于安全考虑,可以理解),下载远程图片的功能就没有办法使用了.找了一些资料之后,找到了解决方法,就是用stream_socket_client()函数替换掉fsockopen()函数.具体的方法如下: 打开/include/中的dedehttpdown.class.php文件,找到如下代码: $this->m_fp = @fsockopen($this->m_host, $this->m_port, $errno, $

php下载远程图片到本地

在使用 PHP 做简单的爬虫的时候,我们经常会遇到需要下载远程图片的需求,所以下面来简单实现这个需求1:使用curl 比如我们有下面这两张图片: $images = [ 'https://img.alicdn.com/tps/TB1jjaYOFXXXXa2aXXXXXXXXXXX-276-402.jpg_150x10000q90.jpg', 'https://img.alicdn.com/tfs/TB15QQ5cgMPMeJjy1XbXXcwxVXa-520-280.jpg_q90_.webp'

织梦5.7下载远程图片和资源无效全套最新解决方案

1.织梦5.7下载远程图片和资源无效可能是因为服务器上禁用了fsockopen() 函数造成的,在用fsockopen()的地方用 stream_socket_client()代替就可以了. 具体修改地方是 /include/dedehttpdown.class.php 第507行 $this->m_fp = @fsockopen($this->m_host, $this->m_port, $errno, $errstr,10); 替换为 $this->m_fp = @stream

ASP.NET下载远程图片保存到本地的方法、保存抓取远程图片

ASP.NET下载远程图片保存到本地的方法.保存抓取远程图片 2012-05-16 11:25:51     我来说两句      收藏    我要投稿 以下介绍两种方法:1.利用WebRequest,WebResponse 类WebRequest wreq=WebRequest.Create("http://up.2cto.com/2012/0516/20120516112717995.gif");    HttpWebResponse wresp=(HttpWebResponse)

C# 下载远程图片并显示

/// <summary> /// 下载远程图片 /// </summary> /// <param name="url"></param> /// <returns></returns> private Image GetImage(string url) { try { HttpWebRequest myrequest = WebRequest.Create(url) as HttpWebRequest; Ht

js 下载远程图片

<!DOCTYPE html><html lang="en"><head> <script src="jquery/jquery-1.9.1.min.js"></script> <script src="jquery/jquery.min.js"></script> <meta charset="UTF-8"> <title&

下载远程(第三方服务器)文件、图片,保存到本地(服务器)的方法、保存抓取远程文件、图片

将一台服务器的文件.图片,保存(下载)到另外一台服务器进行保存的方法: 1 #region 图片下载 2 3 #region 图片下载[使用流.WebRequest进行保存] 4 /// <summary> 5 /// 图片下载[使用流.WebRequest进行保存] 6 /// </summary> 7 /// <param name="fileUrl">图片URL地址(例如:http://img.baidu.com/video/img/video