站長資訊網
        最全最豐富的資訊網站

        php圖片類型如何轉換

        php圖片類型轉換的實現方法:首先安裝php擴展gd和exif;然后通過“transform_image”方法實現圖片類型轉換;最后返回轉換結果即可。

        php圖片類型如何轉換

        推薦:《PHP視頻教程》

        需求

        開發過程中總會遇到一些需求需要對圖片格式進行轉換。比如 gif轉png,jpg轉png

        如最近使用某平臺的圖片文件識別,居然不支持gif格式,那么就需要將gif處理成png等。

        依賴

        php擴展 gd 和 exif

        實現

        /**  * 圖片格式轉換  * @param string $image_path 文件路徑或url  * @param string $to_ext 待轉格式,支持png,gif,jpeg,wbmp,webp,xbm  * @param null|string $save_path 存儲路徑,null則返回二進制內容,string則返回true|false  * @return boolean|string $save_path是null則返回二進制內容,是string則返回true|false  * @throws Exception   * @author klinson <klinson@163.com>  */ function transform_image($image_path, $to_ext = 'png', $save_path = null) {   if (! in_array($to_ext, ['png', 'gif', 'jpeg', 'wbmp', 'webp', 'xbm'])) {     throw new Exception('unsupport transform image to ' . $to_ext);   }   switch (exif_imagetype($image_path)) {     case IMAGETYPE_GIF :       $img = imagecreatefromgif($image_path);       break;     case IMAGETYPE_JPEG :     case IMAGETYPE_JPEG2000:       $img = imagecreatefromjpeg($image_path);       break;     case IMAGETYPE_PNG:       $img = imagecreatefrompng($image_path);       break;     case IMAGETYPE_BMP:     case IMAGETYPE_WBMP:       $img = imagecreatefromwbmp($image_path);       break;     case IMAGETYPE_XBM:       $img = imagecreatefromxbm($image_path);       break;     case IMAGETYPE_WEBP: //(從 PHP 7.1.0 開始支持)       $img = imagecreatefromwebp($image_path);       break;     default :       throw new Exception('Invalid image type');   }   $function = 'image'.$to_ext;   if ($save_path) {     return $function($img, $save_path);   } else {     $tmp = __DIR__.'/'.uniqid().'.'.$to_ext;     if ($function($img, $tmp)) {       $content = file_get_contents($tmp);       unlink($tmp);       return $content;     } else {       unlink($tmp);       throw new Exception('the file '.$tmp.' can not write');     }   } }

        使用

        // 轉換后保存在test.png transform_image($url, 'png', './test.png'); transform_image($filepath, 'png', './test.png'); // 轉換后二進制結果直接返回 transform_image($url, 'png'); transform_image($filepath, 'png');

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 国产综合色在线精品| 无码国产69精品久久久久网站| 乱人伦人妻精品一区二区| 偷拍精品视频一区二区三区| 久久国产热精品波多野结衣AV| 久久精品国产99国产电影网| 久久精品国产一区二区三区不卡| 久久精品国产亚洲麻豆| 日本精品少妇一区二区三区| 久久国产精品无码一区二区三区| 国产精品久久久99| 国产系列高清精品第一页| 精品综合久久久久久97超人| 日本久久久精品中文字幕| 国产第一福利精品导航| 久久国产精品免费一区| 国产日韩精品欧美一区| 国产精品成人精品久久久| 无码精品A∨在线观看中文| 久久国产精品无码一区二区三区 | 国产精品白浆在线观看免费| 久久精品成人| 一级成人精品h| 精品无码无人网站免费视频| 国产精品成人观看视频| 国产精品分类视频分类一区| 中文字幕久久精品无码| 国产精品乱伦| 国产福利91精品一区二区三区| 亚洲国产精品无码久久久秋霞2| 精品国产亚洲男女在线线电影 | 中文字幕久精品免费视频| 国产精品爱搞视频网站| 国产精品高清视亚洲精品| 久久66热人妻偷产精品9| 亚洲性日韩精品国产一区二区| 精品国产青草久久久久福利| 影视网欧洲精品| 国产精品视频久久| 国产精品三级国产电影| 久久精品a亚洲国产v高清不卡|