簡(jiǎn)介

PHP 并不僅限于創(chuàng)建 HTML 輸出, 它也可以創(chuàng)建和處理包括 GIF, PNG, JPEG, WBMP 以及 XPM 在內(nèi)的多種格式的圖像。 更加方便的是,PHP 可以直接將圖像數(shù)據(jù)流輸出到瀏覽器。 要想在 PHP 中使用圖像處理功能,你需要連帶 GD 庫(kù)一起來(lái)編譯 PHP。 GD 庫(kù)和 PHP 可能需要其他的庫(kù), 這取決于你要處理的圖像格式。

你可以使用 PHP 中的圖像函數(shù)來(lái)獲取下列格式圖像的大小: JPEG, GIF, PNGSWF, TIFFJPEG2000。

如果聯(lián)合 exif 擴(kuò)展 一起使用, 你可以操作存儲(chǔ)在 JPEGTIFF 圖像文件頭部的信息, 這樣就就可以獲取數(shù)碼相機(jī)所產(chǎn)生的元數(shù)據(jù)。 exif 相關(guān)的函數(shù)不需要 GD 庫(kù)亦可使用。

注意: 關(guān)于如何擴(kuò)展圖像處理能力,例如讀取、寫入以及修改, 請(qǐng)參考“需求”一節(jié)。 要想讀取數(shù)碼相機(jī)拍攝的圖片的元數(shù)據(jù), 你需要上面提到的 exif 擴(kuò)展。

注意: getimagesize() 函數(shù)不需要 GD 擴(kuò)展庫(kù)。

警告

由于綁定的 GD 庫(kù)使用 Zend 內(nèi)存管理機(jī)制來(lái)分配內(nèi)存, 所以所使用的內(nèi)存大小不受 memory_limit 配置參數(shù)限制。

GD 庫(kù)支持多種圖像格式, 下標(biāo)所列的是 GD 所支持的格式,請(qǐng)注意備圖像格式對(duì)應(yīng)的讀取/寫入支持的可用性。

GD 所支持的格式
格式 支持讀取 支持寫入 備注
JPEG true true  
PNG true true  
GIF true true  
XBM true true  
XPM true false  
WBMP true true  
WebP true true  
BMP true true 從 GD 2.1.0 及 PHP 7.2.0 開(kāi)始支持

很遺憾的是,雖然上表中顯示大部分圖像格式都是支持讀取和寫入的, 但是不代表你的 PHP 環(huán)境在編譯的時(shí)候是支持這些操作的。 要想檢測(cè) GD 庫(kù)所支持的格式,請(qǐng)使用 gd_info() 函數(shù), 更多信息請(qǐng)參考 “安裝” 一章。