解決PHP開啟gd庫無效的問題

2021-09-08 11:41:05 字數 1583 閱讀 1429

),記得php預設沒有開啟gd庫的支援,需要自行開啟。於是就開啟php安裝目錄/php.ini配置檔案,找到如下內容:

;extension=php_gd2.dll
按照網上搜尋得來的方法,去掉前面表示注釋的符號";",然後重新啟動apache伺服器,結果發現還是不行,通過phpinfo()函式仍然無法看到任何與gd庫相關的資訊。看到網上很多關於「php開啟gd庫」的文章,都是直接說一句「去掉***前面的分號」,就沒有下文了。事實證明,僅僅這麼做明顯是不行的,至少官方zip版本的php這麼配置是不行的。

於是就只好自己檢查php.ini

;extension_dir = "ext"
很明顯,extension_dir指令被注釋掉了,導致php連擴充套件庫的資料夾ext都找不到,自然不可能找到擴充套件庫中的php_gd2.dll了,gd庫支援自然也沒有開啟。

於是,照貓畫虎地去掉extension_dir指令前面的注釋符號";",再次重啟伺服器,結果……還是不行。這不科學啊,難道extension_dir指令的值"ext"有問題?最後在php官方文件查詢得知如下圖:

extension_dir指令的官方說明

php官方說,php5搜尋擴充套件庫的預設位置為c:\php5,於是嘗試著按照官方的說法,仍然讓extension_dir保持被注釋掉的現狀,在c盤下新建了乙個php5資料夾,然後將php_gd2.dll複製進去,再次重新啟動伺服器,結果……還是不行。

此時,通過phpinfo()函式檢視得知,在php.ini中沒有開啟extension_dir指令時,phpinfo()上的extension_dir顯示的值居然是c:\php——難道官方的說明文件也出錯了,或者說php 5.4這個版本已經作了變更、而官方文件還沒有及時更新?其他的先不管那麼多了,先試試c:\php行不行,於是將php5重新命名為php,其他一切照舊,接著重新啟動伺服器,然後通過phpinfo()函式檢視到gd庫已經開啟了。——這至少證明,在php 5.4.19中,擴充套件庫的預設搜尋位置為c:\php

當然,眾所周知,extension_dir指令是支援絕對路徑的,上面折騰半天,主要是為了搞明白extension_dir指令的作用與影響。最後還是將extension_dir前面的注釋符號";"去掉,然後將其值改為ext資料夾的絕對路徑,詳細**如下:

extension_dir = "f:/php5.4.19/ext"
綜上所述,對於php官方版而言,要開啟gd庫支援,不僅要去掉extension=php_gd2.dll前的注釋符號,還要去掉extension_dir指令前的注釋符號,並將其值作對應修改。當然,不僅僅是gd庫,如果需要開啟其他php擴充套件庫,例如php_mysql、php_mysqli,方法也是類似的。

php的gd模組 如何在PHP中開啟GD庫支援

注意 akcms已於2019年12月27日宣布停止更新,此文件僅供老使用者參考,不建議新使用者選擇akcms建站。注意 akcms6.1.2已取消授權機制,文件中關於授權 服務 技術支援等的內容均已失效。linux下開啟php的gd庫支援 開啟gd庫支援有以下幾種方法 檢測gd庫是否安裝命令 php...

Windows環境下php開啟GD庫的方法

在php.ini中把extension php gd2.dll 去掉前面的 即可。在windows伺服器開啟php的gd庫時,使用cgi之後phpinfo 得到的結果中 configure command 中並沒有出現gd.將php.ini檔案找到extension php gd2.dll 去掉前面...

Windows環境下php開啟GD庫的方法

在php.ini中把extension php gd2.dll 去掉前面的 即可。在windows伺服器開啟php的gd庫時,使用cgi之後phpinfo 得到的結果中 configure command 中並沒有出現gd.將php.ini檔案找到extension php gd2.dll 去掉前面...