ThinkPHP6下簡(jiǎn)化think-captcha驗(yàn)證碼,提高文字辨識(shí)度

眾所周知,驗(yàn)證碼能防止惡意登錄注冊(cè),它由服務(wù)端生成,發(fā)送給客戶(hù)端,并最終以圖像格式顯示。復(fù)雜的驗(yàn)證碼能提升網(wǎng)站的安全性,但過(guò)于復(fù)雜的驗(yàn)證碼也會(huì)使得文字的肉眼識(shí)別變得異常困難,用戶(hù)體驗(yàn)大大降低。

本文以最新thinkphp6.0的think-captcha擴(kuò)展為修改對(duì)象,來(lái)詳細(xì)講解如何簡(jiǎn)化驗(yàn)證碼的顯示,提高文字辨識(shí)度,讓老年人也能看得清!

think-captcha驗(yàn)證碼

控制器測(cè)試代碼:

<?php namespace appcontroller;  use appBaseController; use thinkfacadeView;  class Index extends BaseController {     public function index()     {         return View::fetch();     } }

視圖測(cè)試代碼:

nbsp;html&gt;   ????<meta> ????<title>Title</title> @@##@@  

默認(rèn)情況下渲染的驗(yàn)證碼如下:

立即學(xué)習(xí)PHP免費(fèi)學(xué)習(xí)筆記(深入)”;

ThinkPHP6下簡(jiǎn)化think-captcha驗(yàn)證碼,提高文字辨識(shí)度

可能有的小伙伴覺(jué)得這很清晰呀,但是對(duì)于年齡較大的人來(lái)說(shuō)還是比較困難,另外通過(guò)修改驗(yàn)證碼文件,也可以提高自己的動(dòng)手能力、增長(zhǎng)知識(shí)。

優(yōu)化think-captcha驗(yàn)證碼

找到configcaptcha.php配置文件,修改如下部分:

//驗(yàn)證碼位數(shù) 'length'???=&gt;?4,????????????????????//簡(jiǎn)潔的4字符驗(yàn)證碼 //?驗(yàn)證碼字符集合 'codeSet'??=&gt;?'0123456789',????????//這里我去掉英文了,只留下數(shù)字部分 //?是否使用混淆曲線 'useCurve'?=&gt;?false, //是否添加雜點(diǎn) 'useNoise'?=&gt;?false, //?驗(yàn)證碼字體?不設(shè)置則隨機(jī) 'fontttf'??=&gt;?'4.ttf',????????????//經(jīng)測(cè)試,該字體很順眼

修改后刷新看看,是不是更簡(jiǎn)潔了?

ThinkPHP6下簡(jiǎn)化think-captcha驗(yàn)證碼,提高文字辨識(shí)度

這樣其實(shí)已經(jīng)比較可以了,正常情況下不建議再修改框架,但既以學(xué)習(xí)為目的,那我們就再深入優(yōu)化下。

打開(kāi)vendortopthinkthink-captchasrcCaptcha.php

修改第277行,去掉字體斜移度

imagettftext($this-&gt;im,?$this-&gt;fontSize,?0,?$x,?$y,?$this-&gt;color,?$fontttf,?$char);

最后看看效果,是不是已經(jīng)很滿(mǎn)意了

ThinkPHP6下簡(jiǎn)化think-captcha驗(yàn)證碼,提高文字辨識(shí)度

本文通過(guò)簡(jiǎn)單的修改配置文件、去掉傾斜度的方式簡(jiǎn)化了驗(yàn)證碼的顯示,提高了文字辨識(shí)度,小伙伴兒們多多動(dòng)手,印象才會(huì)更深刻喲!

ThinkPHP6下簡(jiǎn)化think-captcha驗(yàn)證碼,提高文字辨識(shí)度

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊12 分享