PHP實現下載圖片的通用方法

lpki123 9年前發布 | 1K 次閱讀 PHP

function getPicture($url,$pictureName){
    if ($url == "") return false;
    //獲取圖片的擴展名
    $info = getimagesize($url);
    $mime = $info['mime'];
    $type = substr(strrchr($mime,'/'), 1);
    //不同的圖片類型選擇不同的圖片生成和保存函數
    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創建新圖片
    $img_save_func($src_im, $pictureName); //輸出文件到文件
    return $pictureName;
}

 本文由用戶 lpki123 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!