php curl与fopen下载远程服务器图片实例

fopen函数

 代码如下 复制代码

<?php
 function get_file($url,$folder,$pic_name){ 
  set_time_limit(24*60*60); //限制最大的执行时间
  $destination_folder=$folder?$folder.'/':''; //文件下载保存目录
  $newfname=$destination_folder.$pic_name;//文件PATH
  $file=fopen($url,'rb');
  
  if($file){   
   $newf=fopen($newfname,'wb');
   if($newf){    
    while(!feof($file)){     
     fwrite($newf,fread($file,1024*8),1024*8);
    }
   }
   if($file){    
    fclose($file);
   }
   if($newf){    
    fclose($newf);
   }
  }  
 } 
 get_file("/img/baidu_logo.gif","file","baidu.jpg");
?>

php curl函数

 代码如下 复制代码
/*
*功能:php多种方式完美实现下载远程图片保存到本地
*参数:文件url,保存文件名称,使用的下载方式
*当保存文件名称为空时则使用远程文件原来的名称
*/
function getImage($url,$filename='',$type=0){
    if($url==''){return false;}
    if($filename==''){
        $ext=strrchr($url,'.');
        if($ext!='.gif' && $ext!='.jpg'){return false;}
        $filename=time().$ext;
    }
    //文件保存路径
    if($type){
  $ch=curl_init();
  $timeout=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();
     readfile($url);
     $img=ob_get_contents();
     ob_end_clean();
    }
    $size=strlen($img);
    //文件大小
    $fp2=@fopen($filename,'a');
    fwrite($fp2,$img);
    fclose($fp2);
    return $filename;
}

开启php curl函数库的步骤

1).去掉windows/php.ini 文件里;extension=php_curl.dll前面的; /*用 echo phpinfo();查看php.ini的路径*/

2).把php5/libeay32.dll,ssleay32.dll复制到系统目录windows/下

3).重启apache

时间: 2024-10-23 10:26:21

php curl与fopen下载远程服务器图片实例的相关文章

php Curl保存远程服务器图片

php Curl保存远程服务器图片 function LoadImageCURL($save_to){         $ch = curl_init($this->source);         $fp = fopen($save_to, "wb");                 // set URL and other appropriate options         $options = array(CURLOPT_FILE => $fp,        

asp.net 如何下载远程的图片到本地文件夹,前提是不知道图片的个数和名称

问题描述 asp.net 如何下载远程的图片到本地文件夹,前提是不知道图片的个数和名称 想要将单反内的照片随时同步到本地文件夹内,该如何做呢,谢谢大神们,感激不尽 解决方案 远程服务器需要装东西,web的话可以部署个web服务,能返回某文件夹对象,并且图片所在文件夹要建立到1个网站里,目的是使它具有http网络资源的的访问地址:然后你本机弄个exe程序,用System.Net.WebClient类来下载资源文件到你本机,伪代码示例: 服务器的web服务 [webmethod] public Di

php 自动下载远程服务器文件

php 自动下载远程服务器文件 <form method="post"> <input name="url" size="50" /> <input name="submit" type="submit" /> </form> < ?php // maximum execution time in seconds set_time_limit (24 *

php 保存远程服务器图片代码

php 保存远程服务器图片代码 <?php function getmicrotime(){     list($usec, $sec) = explode(" ",microtime());     return ((float)$usec + (float)$sec); } function SaveHTTPFile($fFileHTTPPath,$fFileSavePath,$fFileSaveName) {  //记录程序开始的时间  $BeginTime=getmicr

浅谈php fopen下载远程文件的函数_php实例

如下所示: //下载附件 function get_file($url, $folder = "./") { set_time_limit (24 * 60 * 60); // 设置超时时间 $destination_folder = $folder . '/'; // 文件下载保存目录,默认为当前文件目录 if (!is_dir($destination_folder)) { // 判断目录是否存在 mkdirs($destination_folder); // 如果没有就建立目录

asp下载远程服务器文件[rar,jpg,gif,zip,png]

asp下载远程服务器文件[rar,jpg,gif,zip,png] < % function   downfilea(d_target,   s_target) On   Error   Resume   Next       dim   myhttp,   objstream     set   myhttp   =   server.createobject( "MSXML2.XMLHTTP ")     myhttp.open   "GET ",   d

浅谈php fopen下载远程文件的函数

如下所示: //下载附件 function get_file($url, $folder = "./") { set_time_limit (24 * 60 * 60); // 设置超时时间 $destination_folder = $folder . '/'; // 文件下载保存目录,默认为当前文件目录 if (!is_dir($destination_folder)) { // 判断目录是否存在 mkdirs($destination_folder); // 如果没有就建立目录

PHP 下载远程网页图片并且保存在本地实例

fopen函数实例 ob_start : 打开输出缓冲 readfile : 读入一个文件并写入到输出缓冲 返回从文件中读入的字节数.如果出错返回 FALSE 并且除非是以 @readfile() 形式调用,否则会显示错误信息. ob_get_contents : Return the contents of the output buffer(返回输出缓冲的内容) This will return the contents of the output buffer without cleari

php curl自动采集远程服务器图片方法

 代码如下 复制代码 <?php $url = "http://www.111cn.net/img/logo.jpg"; $filename = 'curl.gif'; getImg($url, $filename); /* *@通过curl方式获取制定的图片到本地 *@ 完整的图片地址 *@ 要存储的文件名 */ function getImg($url = "", $filename = "") { if(is_dir(basename