PHP驗(yàn)證碼類實(shí)現(xiàn)驗(yàn)證碼功能.doc

PHP驗(yàn)證碼類實(shí)現(xiàn)驗(yàn)證碼功能.doc

ID:60775400

大?。?2.50 KB

頁數(shù):4頁

時(shí)間:2020-12-17

PHP驗(yàn)證碼類實(shí)現(xiàn)驗(yàn)證碼功能.doc_第1頁
PHP驗(yàn)證碼類實(shí)現(xiàn)驗(yàn)證碼功能.doc_第2頁
PHP驗(yàn)證碼類實(shí)現(xiàn)驗(yàn)證碼功能.doc_第3頁
PHP驗(yàn)證碼類實(shí)現(xiàn)驗(yàn)證碼功能.doc_第4頁
資源描述:

《PHP驗(yàn)證碼類實(shí)現(xiàn)驗(yàn)證碼功能.doc》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、PHP驗(yàn)證碼類實(shí)現(xiàn)驗(yàn)證碼功能,有兩個(gè)方法,分別是用內(nèi)置字體和自定義字體生成驗(yàn)證碼。具體代碼如下:  <?php  /**  *驗(yàn)證碼生成類  *@example  *$pic=newuImage();  *$code=$pic->getVerifyCode();  *header("Content-type:image/png");  *$pic->captchaFromFont($font='RAVIE.TTF');or$pic->captcha();  */  classuImage{  /**  *驗(yàn)證碼字符  *@ac

2、cessprotected  */  protected$code;  /**  *生成圖片驗(yàn)證碼,直接輸出的是圖片,字體大小是內(nèi)置字體,最大是5  *@accesspublic  *@paramint$width驗(yàn)證碼圖片寬度  *@paramint$height驗(yàn)證碼圖片的高度  *@paramint$snow背景雪花的數(shù)量  *@paramint$line干擾線的條數(shù)  */  publicfunctioncaptcha($width=100,$height=30,$snow=80,$line=3){  $pic=imagecreatetrue

3、color($width,$height);  $backageColor=imagecolorallocate($pic,0xFF,0xFF,0xFF);  imagefill($pic,0,0,$backageColor);  //打雪花  for($i=0;$i<=$snow;$i++){  $color=imagecolorallocate($pic,mt_rand(150,230),mt_rand(150,230),mt_rand(150,230));  imagechar($pic,1,mt_rand(0,$width),mt_ra

4、nd(0,$height),"*",$color);  imagecolordeallocate($pic,$color);  }  //畫干擾線  for($i=0;$i<=$line;$i++){  $x1=mt_rand(2,$width*0.2);  $x2=mt_rand($width*0.8,$width-2);  $y1=mt_rand(2,$height-2);  $y2=mt_rand(2,$height-2);  $color=imagecolorallocate($pic,mt_rand(130,250),mt_rand(

5、130,250),mt_rand(130,250));  imageline($pic,$x1,$y1,$x2,$y2,$color);  imagecolordeallocate($pic,$color);  }  //畫字符  $code=$this->code;  $eachW=$width/strlen($code);//圖片依據(jù)字符個(gè)數(shù)分配等份數(shù)  $fontWidth=imagefontwidth(5);//取得字體寬度  $fontHeight=imagefontheight(5);//取得字體高度  for($i=0;$i<

6、;strlen($code);$i++){  $color=imagecolorallocate($pic,mt_rand(30,155),mt_rand(30,155),mt_rand(30,150));  $x=mt_rand($eachW*$i,$eachW*($i+1)-$fontWidth);  $y=mt_rand(3,$height-$fontHeight);  imagechar($pic,5,$x,$y,$code{$i},$color);//水平畫字符  imagecolordeallocate($pic,$color);  } 

7、 //輸出  ob_start();  ob_clean();  imagepng($pic);  imagedestroy($pic);  }  /**  *根據(jù)自定義字體生成驗(yàn)證碼  *@accesspublic  *@paramstring$font字符文件,TrueType字體文件,.ttf字體  *@paramint$fontWeight字符大小  *@paramint$width圖片寬  *@paramint$height圖片高  *@paramint$snow背景雪花個(gè)數(shù)  *@paramint$line干擾線條數(shù)  *@paramin

8、t$padding圖片內(nèi)邊距  */  publicfunctioncaptchaFromFont($fon

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。