在網(wǎng)站開發(fā)中,圖片處理是一個很重要的環(huán)節(jié),而 php gd 是用于 php 圖片處理的非常強(qiáng)大的擴(kuò)展。php gd 可以使你使用簡單的 php 代碼生成各種各樣的圖片,包括縮略圖、驗證碼、水印等等,非常方便。
下面我們來講一講如何安裝 php gd 擴(kuò)展。
首先,你需要安裝一下 gd 庫,這個庫包含了很多 php gd 擴(kuò)展所需要的依賴支持。在 ubuntu 下安裝,可以使用以下命令:
sudo apt-get install libgd-dev安裝好了 gd 庫之后,我們就可以來安裝 php gd 擴(kuò)展了。在大部分 linux 發(fā)行版中,php gd 擴(kuò)展可以通過包管理器安裝,比如使用 ubuntu 的 apt-get 命令:
sudo apt-get install php7.0-gd當(dāng)然,有些情況下,你需要自己手動編譯 php gd 擴(kuò)展。這時你需要先下載 php 源碼包及 php gd 擴(kuò)展源碼包。比如,你想要為 php 5.6 編譯 php gd 擴(kuò)展,可以按以下步驟操作: 1.下載 php 5.6 源碼包:
wget http://cn2.php.net/get/php-5.6.39.tar.gz/from/this/mirror2.解壓源碼包:
tar -xzvf php-5.6.39.tar.gz3.下載 php gd 擴(kuò)展源碼包:
wget https://pecl.php.net/get/gd-7.2.3.tgz4.解壓擴(kuò)展源碼包:
tar -xzvf gd-7.2.3.tgz5.進(jìn)入擴(kuò)展源碼目錄,執(zhí)行以下命令:
cd gd-7.2.3 /usr/local/php/bin/phpize ./configure --with-php-config=/usr/local/php/bin/php-config make && make install接下來,你需要在 php.ini 文件中啟用 php gd 擴(kuò)展,找到以下一行并將前面的注釋符去掉即可:
;extension=gd.so至此,php gd 擴(kuò)展就安裝好了。 php gd 的用法非常簡單,我們來看一個生成縮略圖的例子:
// 打開原始圖片文件 $src = imagecreatefromjpeg('path/to/image.jpg'); // 獲取原始圖片的寬度和高度 $srcWidth = imagesx($src); $srcHeight = imagesy($src); // 計算需要生成的縮略圖的寬度和高度 $thumbWidth = 200; $thumbHeight = $srcHeight * ($thumbWidth / $srcWidth); // 創(chuàng)建空白的縮略圖畫布 $thumb = imagecreatetruecolor($thumbWidth, $thumbHeight); // 將原始圖片縮放并貼到縮略圖畫布上 imagecopyresampled($thumb, $src, 0, 0, 0, 0, $thumbWidth, $thumbHeight, $srcWidth, $srcHeight); // 保存生成的縮略圖到文件 imagejpeg($thumb, 'path/to/thumb.jpg'); // 釋放畫布資源 imagedestroy($src); imagedestroy($thumb);這段代碼會生成一個寬度為 200px,等比例縮放的縮略圖。當(dāng)然,php gd 還有很多其他的用法,更多的用法可以參考 php 官方文檔。 總之,php gd 擴(kuò)展是一個非常實用的 php 圖片處理擴(kuò)展,可以方便地生成各種圖片,如果你對相關(guān)領(lǐng)域比較感興趣,不妨學(xué)習(xí)一下。