本文主要和大家介紹了PHP實現瀏覽器中直接輸出圖片的方法,結合執行個體形式分析了php輸出圖片的原理與相關操作技巧,需要的朋友可以參考下,希望能協助到大家。
在瀏覽器中輸出圖片,最簡單的方法當然是使用HTML的img標籤,直接傳入圖片路徑或者連結。但有時候我們需要把圖片做一些處理,比如改一片品質或者尺寸再顯示出來,我們可以使用PHP內建的圖片處理函數imagecreatefromjpeg
(或imagecreatefrompng
)由檔案或 URL 建立一個新圖象和imagejpeg
(或imagepng
),通過 header()
發送 Content-type: image/jpeg 可以使 PHP 指令碼直接輸出 JPEG 映像。
/* * php 頁面直接輸出圖片 */function showImg($img){ $info = getimagesize($img); $imgExt = image_type_to_extension($info[2], false); //擷取檔案尾碼 $fun = "imagecreatefrom{$imgExt}"; $imgInfo = $fun($img); //1.由檔案或 URL 建立一個新圖象。如:imagecreatefrompng ( string $filename ) //$mime = $info['mime']; $mime = image_type_to_mime_type(exif_imagetype($img)); //擷取圖片的 MIME 類型 header('Content-Type:'.$mime); $quality = 100; if($imgExt == 'png') $quality = 9; //輸出品質,JPEG格式(0-100),PNG格式(0-9) $getImgInfo = "image{$imgExt}"; $getImgInfo($imgInfo, null, $quality); //2.將映像輸出到瀏覽器或檔案。如: imagepng ( resource $image ) imagedestroy($imgInfo);}
可以讀取本地圖片檔案,也可以讀取遠程圖片連結。
註:imagejpeg
(或imagepng
)支援僅在PHP與GD-1.8或更高版本一起編譯時間可用。quality為可選項,jpeg範圍從0(最差品質,檔案更小)到100(最佳品質,檔案最大),png範圍從 0到9。