PHP使用GD庫封裝驗證碼類

2022-09-17 22:12:18 字數 981 閱讀 8677

除錯小技巧:當無法顯示時,將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記住...