国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

php獲取遠程圖片并把它保存到本地

2024-09-04 11:44:31
字體:
來源:轉載
供稿:網友

在php中我們經常使用寫一些簡單的采集功能,這樣可以自動把遠程服務器的圖片或資源直接采集保存到本地服務器中,下面我來給大家詳細介紹遠程圖片并把它保存到本地幾種方法.

例1,代碼如下:

  1. /* 
  2. *功能:php多種方式完美實現下載遠程圖片保存到本地 
  3. *參數:文件url,保存文件名稱,使用的下載方式 
  4. *當保存文件名稱為空時則使用遠程文件原來的名稱 
  5. */ 
  6. function getImage($url,$filename='',$type=0){ 
  7. //開源代碼Vevb.com 
  8.     if($url==''){return false;} 
  9.     if($filename==''){ 
  10.         $ext=strrchr($url,'.'); 
  11.         if($ext!='.gif' && $ext!='.jpg'){return false;} 
  12.         $filename=time().$ext
  13.     } 
  14.     //文件保存路徑  
  15.     if($type){ 
  16.   $ch=curl_init(); 
  17.   $timeout=5; 
  18.   curl_setopt($ch,CURLOPT_URL,$url); 
  19.   curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); 
  20.   curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout); 
  21.   $img=curl_exec($ch); 
  22.   curl_close($ch); 
  23.     }else
  24.      ob_start();  
  25.      readfile($url); 
  26.      $img=ob_get_contents();  
  27.      ob_end_clean();  
  28.     } 
  29.     $size=strlen($img); 
  30.     //文件大小  
  31.     $fp2=@fopen($filename,'a'); 
  32.     fwrite($fp2,$img); 
  33.     fclose($fp2); 
  34.     return $filename

例2,代碼如下:

  1. <?php 
  2. // 
  3. // Function: 獲取遠程圖片并把它保存到本地 
  4. // 
  5. // 
  6. //   確定您有把文件寫入本地服務器的權限 
  7. //   
  8. // 
  9. // 變量說明: 
  10. // $url 是遠程圖片的完整URL地址,不能為空。 
  11. // $filename 是可選變量: 如果為空,本地文件名將基于時間和日期 
  12. // 自動生成. 
  13.  
  14. function GrabImage($url,$filename="") { 
  15.    if($url==""):return false;endif
  16.  
  17.    if($filename=="") { 
  18.      $ext=strrchr($url,"."); 
  19.      if($ext!=".gif" && $ext!=".jpg"):return false;endif
  20.      $filename=date("dMYHis").$ext
  21.    } 
  22.  
  23.    ob_start(); 
  24.    readfile($url); 
  25.    $img = ob_get_contents(); 
  26.    ob_end_clean(); 
  27.    $size = strlen($img); 
  28.  
  29.    $fp2=@fopen($filename"a"); 
  30.    fwrite($fp2,$img); 
  31.    fclose($fp2); 
  32.  
  33.    return $filename
  34.  
  35.  
  36. $img=GrabImage("http://www.survivalescaperooms.com",""); 
  37. if($img):echo '<pre><img src="'.$img.'"></pre>';else:echo "false";endif;   
  38.  
  39. ?> 

dedecms中的,代碼如下:

  1. if(!emptyempty($saveremoteimg)) 
  2.          { 
  3.                  $body = stripslashes($body); 
  4.                  $img_array = array(); 
  5.                  preg_match_all("/(src|SRC)=["|'| ]{0,}(http://(.*).(gif|jpg|jpeg|bmp|png))/isU",$body,$img_array); 
  6.                  $img_array = array_unique($img_array[2]); 
  7.                  set_time_limit(0); 
  8.                  $imgUrl = $img_dir."/".strftime("%Y%m%d",time()); 
  9.                  $imgPath = $base_dir.$imgUrl
  10.                  $milliSecond = strftime("%H%M%S",time()); 
  11.                  if(!is_dir($imgPath)) @mkdir($imgPath,0777); 
  12.                  foreach($img_array as $key =>$value
  13.                  { 
  14.                          $value = trim($value); 
  15.                          $get_file = @file_get_contents($value); 
  16.                          $rndFileName = $imgPath."/".$milliSecond.$key.".".substr($value,-3,3); 
  17.                          $fileurl = $imgUrl."/".$milliSecond.$key.".".substr($value,-3,3); 
  18.                          if($get_file
  19.                          { 
  20.                                  $fp = @fopen($rndFileName,"w"); 
  21.                                  @fwrite($fp,$get_file); 
  22.                                  @fclose($fp); 
  23.                          } 
  24.                          $body = ereg_replace($value,$fileurl,$body); 
  25.                  } 
  26.                  $body = addslashes($body); 
  27.          } 
  28. ?> 

例4,代碼如下:

  1. <?php 
  2. // 
  3. // Function: 獲取遠程圖片并把它保存到本地 
  4. // 
  5. // 
  6. // 確定您有把文件寫入本地服務器的權限 
  7. // 
  8. // 
  9. // 變量說明: 
  10. // $url 是遠程圖片的完整URL地址,不能為空。 
  11. // $filename 是可選變量: 如果為空,本地文件名將基于時間和日期// 自動生成. 
  12. function GrabImage($url,$filename='') { 
  13. if($url==''):return false;endif
  14. if($filename=='') { 
  15. $ext=strrchr($url,'.'); 
  16. if($ext!='.gif' && $ext!='.jpg'):return false;endif;$filename=date('dMYHis').$ext
  17. ob_start(); 
  18. readfile($url); 
  19. $img = ob_get_contents(); 
  20. ob_end_clean(); 
  21. $size = strlen($img); 
  22. $fp2=@fopen($filename'a'); 
  23. fwrite($fp2,$img); 
  24. fclose($fp2); 
  25. return $filename
  26. $img=GrabImage('http://www.survivalescaperooms.com/static/image/common/logo.png',''); 
  27. if($img){echo '<pre><img src='.$img.'></pre>';}else{echo 'false';} 
  28. ?> 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 错那县| 普兰店市| 洪江市| 绥德县| 彭州市| 彭水| 红河县| 自治县| 青河县| 剑河县| 太湖县| 兴山县| 长阳| 石台县| 佛山市| 荣成市| 乡城县| 巩义市| 定兴县| 洛浦县| 云浮市| 张家口市| 全椒县| 恩施市| 比如县| 江陵县| 酒泉市| 尚义县| 甘南县| 建昌县| 郎溪县| 密山市| 互助| 云南省| 洪泽县| 科技| 渑池县| 加查县| 敦煌市| 宾川县| 石屏县|