除錯小技巧:當無法顯示時,將header函式注釋掉就可以看到報錯資訊了
字型檔案放在當前檔案目錄的font資料夾中,windows的字型可以到c:\windows\fonts目錄下複製過來,處理好檔名即可
關於gd庫和物件導向的知識點可以看我前面幾篇隨筆,直接上**了
<?php//驗證碼類
namespace vendor;
class
captchamaker
$interferon_level = $level ? ($level >= 1 && $level
<= 3 ? $level: 2) : 2;
//增加干擾點
$interferon_arr = array('*','(',')','~','^','=','-','+','#','&');
for($i = 0;$i
< $interferon_level * 100;$i++)
//增加干擾線
for($i = 0;$i
< $interferon_level * 10;$i++)
//輸出資源
header('content-type:image/png');
imagepng(
$img
); imagedestroy(
$img
); }
//獲取隨機字串
private
static
function getstring($length = 4)
}//返回給呼叫處
return
$captcha
; }
//驗證驗證碼
public
static
function checkcaptcha($captcha)}
//測試
captchamaker::getcaptcha();
php 使用GD庫生成驗證碼
gd庫是php進行圖象操作乙個很強大的庫。先在php.ini裡增加一行引用 extension php gd2.dll 重啟apache。做乙個測試頁 var dump gd info 輸出資料表明gd庫引用成功。表單auth.html 驗證碼title head body h1 請輸入驗證碼 h1...
GD 驗證碼類
1 建立畫布 2 干擾 3 文字 4 輸出 5 釋放資源 class code 定有出口程式 function printimage 1 建立畫布 背景色淺色 顏色隨機 private function bg 2 干擾 private function disturb 10條隨機出現的線 for i...
php 基於GD庫驗證碼
頁面關鍵html 請輸入驗證碼看不清 checkcode 方法,採用ajax校驗驗證碼 呼叫gd庫類,畫驗證碼 隨機生成乙個4位數字的驗證碼 num for i 0 i 4 i session start 開啟session session yan substr num,0,4 用session記住...