php 保存网络图片,自动采集保存远程图片与文件

*/
$dir ='/www.111cn.net';

 if(strstr($src, "http://") && !strstr($src, $_SERVER['HTTP_HOST'])){
  $src = getimg($src);
 } 

 function getimg($l1){
  $l2 = $dir.'/'.substr(md5($l1),10,10).strrchr($l1,".");
  //文件存在,直接返回地址
  if(file_exists($l2)){   
   //echo "exits...";
   return $l2;
  }
  
  //开始获取文件,并返回新路径 
  $img = file_get_contents($l1);     
  if($img){
   if(!is_dir($dir)){
    @mkdir($dir);
   } 
   savefile($l2, $img);
   //echo "file_get..";
   return $l2;
  }    
 }
 
 //保存文件(文件, [内容])
 
 function savefile($l1, $l2=''){  
  if(function_exists(file_put_contents)){
   file_put_contents($l1, $l2);
  } else{
   $fp = @fopen($l1, 'wb');
   @fwrite($fp, $l2);
   fclose($fp);
  }
 }
 
 
/*

strrchr() 函数查找字符串在另一个字符串中最后一次出现的位置,并返回从该位置到字符串结尾的所有字符
strstr() 函数搜索一个字符串在另一个字符串中的第一次出现。该函数返回字符串的其余部分(从匹配点)。如果未找到所搜索的字符串,则返回 false。
file_exists 判断文件是否存在,是返回ture或1 否返回false或0
file_get_contents() 函数把整个文件读入一个字符串中。
mkdir 创建目录,成功ture 否false
file_put_contents() 函数把一个字符串写入文件中 与依次调用 fopen(),fwrite() 以及 fclose() 功能一样

 本程序是首页判断我们读取地址是网络的还是本地的,如果是本服务器的图片地址就不加处理否则就把远程服务器的图片或文件下载到本地服务器上。
 
*/
 
  
// 本文章原创于www.111cn.net 转载注明出处

时间: 2024-09-20 23:46:07

php 保存网络图片,自动采集保存远程图片与文件的相关文章

Asp中利用xmlhttp下载远程图片、文件,并保存到本地

例2 二进制方式下载远程图片.文件,并保存到本地:  代码如下 复制代码 Private Function GetPicture(X) '获取图片数据     Set xml = Server.CreateObject("Microsoft.xmlhttp")     xml.Open "GET", X, False     xml.Send     GetPicture = xml.ResponseBody     Set xml=Nothing End Func

用PHP判断远程图片(文件)是否存在

 代码如下 复制代码 <?php /* *用PHP判断远程图片(文件)是否存在 *http://www.111cn.net */ function check_remote_file_exists($url) {     $curl = curl_init($url);      // 不取回数据     curl_setopt($curl, CURLOPT_NOBODY, true);      // 抓取跳转后的内容     curl_setopt($curl, CURLOPT_FOLLOW

PHP判断远程图片或文件或url是否存在

例子一  代码如下 复制代码 //判断远程文件 function check_remote_file_exists($url) { $curl = curl_init($url); // 不取回数据 curl_setopt($curl, CURLOPT_NOBODY, true); // 发送请求 $result = curl_exec($curl); $found = false; // 如果请求没有发送失败 if ($result !== false) { // 再检查http响应码是否为2

PHP判断远程图片或文件是否存在的实现代码_php技巧

最简单的方法就是用fopen(),看看文件能否打开,能打就文件当然就存在 复制代码 代码如下: <?php$url = 'http://www.jb51.net/images/test.jpg'; if( @fopen( $url, 'r' ) ) {     echo 'File Exits';} else {    echo 'File Do Not Exits';}?> 语法:fopen(filename,mode,include_path,context) 参数 描述 filename

php自动采集内容中带有图片地址的远程图片保存到本地

php自动采集内容中带有图片地址的远程图片保存到本地 function my_file_get_contents($url, $timeout=30) {  if ( function_exists('curl_init') )  {   $ch = curl_init();   curl_setopt ($ch, curlopt_url, $url);   curl_setopt ($ch, curlopt_returntransfer, 1);   curl_setopt ($ch, cur

远程图片自动保存到本地服务器

服务器 在动网看到有篇介绍保存远程图片的函数,感觉功能相当好,特经过我个人的修改,共享出来. <%'============================================'函数作用:远程图片自动保存到本地服务器'修改时间:2006-7-3 21:21'传人参数:' LocalFileName:本地文件名' RemoteFileUrl:远程文件URL'============================================sub SaveRemoteFile(Lo

php采集内容中带有图片地址的远程图片并保存的方法

 这篇文章主要介绍了php采集内容中带有图片地址的远程图片并保存的方法,可实现采集并保存远程图片的功能,是非常实用的技巧,需要的朋友可以参考下     本文实例讲述了php采集内容中带有图片地址的远程图片并保存的方法.分享给大家供大家参考.具体实现方法如下:   代码如下: function my_file_get_contents($url, $timeout=30) { if ( function_exists('curl_init') ) { $ch = curl_init(); curl

asp 远程图片自动保存到本地服务器(1/2)

<% '============================================ '函数作用:远程图片自动保存到本地服务器 '修改时间:2006-7-3 21:21 '传人参数: ' localfilename:本地文件名 ' remotefileurl:远程文件url '============================================ sub saveremotefile(localfilename,remotefileurl) dim ads,retr

保存远程图片函数修改正版_小偷/采集

趁今天有空,修正了一下这个函数,经测试,在本地服务器通过,在空间商服务器也可正常使用,没发现错误.我的卡巴斯基不报毒了.^_^ 只要修改一下,这个函数是放在哪个网站都适用的.在此只与添加图片为例说明一下调用方法,其它位置方法类似. 在我本机测试成功,由于现在连不上空间的FTP,所以无办在空间上测试,发现问题请到群中提出. 一.把下面函数放到Ft_admin_conn.asp的最后 '================================== '=函 数 名:saveimgfile '=