安裝GD庫解決ThinkPHP驗證碼CalltoundefinedfunctionThinkimagecreate()出錯

imzdx發表於2016-04-07
在php中imagecreate函式是一個圖形處理函式,主要用於新建一個基於調色盤的影像了,然後在這個基礎上我們可以建立一些圖形數字字元之類的,但這個函式需要GD庫支援,如果沒有開啟GD庫使用時會提示Call to undefined function imagecreate()錯誤。

例,我在測試一個簡單生成圖形時例項

Example #1 新建一個新的 GD 影像流並輸出影像

 程式碼如下 複製程式碼

<?php header(“Content-type: image/png”); $im = @imagecreate(100, 50)     or die(“Cannot Initialize new GD image stream”); $background_color = imagecolorallocate($im, 255, 255, 255); $text_color = imagecolorallocate($im, 233, 14, 91); imagestring($im, 1, 5, 5,  “A Simple Text String”, $text_color); imagepng($im); imagedestroy($im); ?>

執行機制時提示

Fatal error: Call to undefined function imagecreate() …..

後面突然想起沒開啟gd庫了

這一問題是:GD庫沒有正確安裝或配置,解決方案:

在php.ini中找到 ;extension=php_gd2.dll 去掉前邊的; 然後將php目錄中的ext下的php_gd2.dll拷入c:/windows/system32和c:/windows目錄下,重啟IIS或者apache就OK了.

centos中gd庫開啟

具體操作只有2個命令如下: 執行線上安裝帶GD庫的PHP的命令:

 程式碼如下 複製程式碼
yum -y install php-gd

重新啟動apachce服務以使安裝後的GD庫生效

 程式碼如下 複製程式碼
/etc/rc.d/init.d/httpd restart(service httpd restart)

gd的安裝路徑

/etc/php.d/gd.ini                 <—這個是讓php支援gd的哦,這個是CentOS的特色之一,不用把全部東西都寫在php.ini這個檔案裡,只是需要把*.ini檔案寫在/etc/php.d/資料夾就可以了,系統會自動把這個目錄下的*.ini讀入php.ini /usr/lib/php/modules/gd.so   <—-這個就是gd的檔案啦


相關文章