php中使用gd庫實現(xiàn)遠程圖片下載實例
更新時間:2015年05月12日 10:05:07 投稿:junjie
這篇文章主要介紹了php中使用gd庫實現(xiàn)遠程圖片下載實例,本文直接給出實現(xiàn)代碼,需要的朋友可以參考下
因為今天想寫個遠程下載圖片的類,提前熱身寫了個php gd庫實現(xiàn)遠程圖片下載功能,當然curl實現(xiàn)更好,php gd庫實現(xiàn)遠程圖片下載功能主要使用gd庫的兩個函數(shù)ImageCreateFromXXX()用于生成圖片函數(shù)和ImageXXX函數(shù),XXX表示不同圖片的擴展名,所以你要想辦法獲取遠程圖片的擴展名了,附上php代碼如下:
<?php header("Content-type:text/html ; charset=utf-8"); if (!empty($_POST['submit'])){ $url = $_POST['url']; $pictureName = $_POST['pictureName']; $img = getPicture($url,$pictureName); echo '<pre><img src="'.$img.'"></pre>'; } function getPicture($url,$pictureName){ if ($url == "") return false; //獲取圖片的擴展名 $info = getimagesize($url); $mime = $info['mime']; $type = substr(strrchr($mime,'/'), 1); //不同的圖片類型選擇不同的圖片生成和保存函數(shù) switch($type){ case 'jpeg': $img_create_func = 'imagecreatefromjpeg'; $img_save_func = 'imagejpeg'; $new_img_ext = 'jpg'; break; case 'png': $img_create_func = 'imagecreatefrompng'; $img_save_func = 'imagepng'; $new_img_ext = 'png'; break; case 'bmp': $img_create_func = 'imagecreatefrombmp'; $img_save_func = 'imagebmp'; $new_img_ext = 'bmp'; break; case 'gif': $img_create_func = 'imagecreatefromgif'; $img_save_func = 'imagegif'; $new_img_ext = 'gif'; break; case 'vnd.wap.wbmp': $img_create_func = 'imagecreatefromwbmp'; $img_save_func = 'imagewbmp'; $new_img_ext = 'bmp'; break; case 'xbm': $img_create_func = 'imagecreatefromxbm'; $img_save_func = 'imagexbm'; $new_img_ext = 'xbm'; break; default: $img_create_func = 'imagecreatefromjpeg'; $img_save_func = 'imagejpeg'; $new_img_ext = 'jpg'; } if ($pictureName == ""){ $pictureName = time().".{$new_img_ext}"; }else{ $pictureName = $pictureName.".{$new_img_ext}"; } $src_im = $img_create_func($url); //由url創(chuàng)建新圖片 $img_save_func($src_im, $pictureName); //輸出文件到文件 return $pictureName; } ?> <form method="POST" action=""> 遠程url地址:<input type="text" name="url" size=20 /><br /> 文件名稱:<input type="text" name="pictureName" size=20 /> <input type="submit" name="submit" value="下載" /> </form>
運行結(jié)果如下圖:(圖片自動保存在當前文件目錄,不明白的可以留言)
您可能感興趣的文章:
- php使用GD2繪制幾何圖形示例
- 如何打開php的gd2庫
- PHP使用GD庫輸出漢字的方法【測試可用】
- php利用gd庫為圖片添加水印
- PHP GD庫相關(guān)圖像生成和處理函數(shù)小結(jié)
- PHP基于GD庫的圖像處理方法小結(jié)
- php gd等比例縮放壓縮圖片函數(shù)
- php中使用GD庫做驗證碼
- PHP中使用GD庫繪制折線圖 折線統(tǒng)計圖的繪制方法
- php使用GD庫創(chuàng)建圖片縮略圖的方法
- php使用GD實現(xiàn)顏色漸變實例
- php中使用gd庫實現(xiàn)下載網(wǎng)頁中所有圖片
- php使用GD創(chuàng)建保持寬高比縮略圖的方法
- php使用gd2繪制基本圖形示例(直線、圓、正方形)
相關(guān)文章
PHP實現(xiàn)保存網(wǎng)站用戶密碼到css文件(通用型)
這篇文章主要介紹了PHP實現(xiàn)保存網(wǎng)站用戶密碼到css文件(通用型),的實例代碼,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2017-11-11php提取身份證號碼中的生日日期以及驗證是否為成年人的函數(shù)
本篇文章使用php技術(shù)提取身份證號碼中的生日日期來判斷是否是未成年人的一個函數(shù)。下面小編把代碼分享給大家,供大家參考2015-09-09