温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

ThinkPHP6下如何简化think-captcha验证码

发布时间:2021-04-19 09:30:27 来源:亿速云 阅读:350 作者:小新 栏目:编程语言

这篇文章给大家分享的是有关ThinkPHP6下如何简化think-captcha验证码的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

think-captcha验证码

控制器测试代码:

<?php
namespace app\controller;

use app\BaseController;
use think\facade\View;

class Index extends BaseController
{
    public function index()
    {
        return View::fetch();
    }
}

视图测试代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<img src="{:captcha_src()}" alt="">
</body>
</html>

默认情况下渲染的验证码如下:

ThinkPHP6下如何简化think-captcha验证码

可能有的小伙伴觉得这很清晰呀,但是对于年龄较大的人来说还是比较困难,另外通过修改验证码文件,也可以提高自己的动手能力、增长知识。

优化think-captcha验证码

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

//验证码位数
'length'   => 4,                    //简洁的4字符验证码
// 验证码字符集合
'codeSet'  => '0123456789',        //这里我去掉英文了,只留下数字部分
// 是否使用混淆曲线
'useCurve' => false,
//是否添加杂点
'useNoise' => false,
// 验证码字体 不设置则随机
'fontttf'  => '4.ttf',            //经测试,该字体很顺眼

修改后刷新看看,是不是更简洁了?

ThinkPHP6下如何简化think-captcha验证码

这样其实已经比较可以了,正常情况下不建议再修改框架,但既以学习为目的,那我们就再深入优化下。

打开vendor\topthink\think-captcha\src\Captcha.php

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

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

最后看看效果,是不是已经很满意了

ThinkPHP6下如何简化think-captcha验证码

感谢各位的阅读!关于“ThinkPHP6下如何简化think-captcha验证码”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI