ThinkSSL🔒 一键申购 5分钟快速签发 30天无理由退款 购买更放心 广告
[TOC] ### 组件说明 > captcha是一个简单的验证码生成组件。 ### 配置选项 | 配置名 | 参数类型 | 可选 | 默认值 | 说明 | | --- | --- | --- | --- | --- | | class | string | 是 | lying\captcha\Captcha | 可配置 | | length | int | 是 | 4 | 验证码长度 | | width | int | 是 | 120 | 验证码宽 | | height | int | 是 | 40 | 验证码高 | | lines | int | 是 | 10 | 干扰线条数 | | fonts | array | 是 | [] | 额外的字体文件绝对路径地址 | | bg | array | 是 | [255, 255, 255] | 背景色 | | fontSize | int | 是 | 20 | 字体大小 | | noisy | int | 是 | 50 | 噪点数量 | | expire | int | 是 | 120 | 验证码有效期(秒) | ### 示例配置 ~~~php //验证码组件 'captcha' => [ 'class' => 'lying\captcha\Captcha', 'length' => 4, //验证码长度 'width' => 120, //宽 'height' => 40, //高 'lines' => 10, //干扰线条数 'fonts' => [], //额外的字体文件绝对路径地址 'bg' => [255, 255, 255], //背景色 'fontSize' => 20, //字体大小 'noisy' => 50, //噪点 'expire' => 120, //验证码有效期 ], ~~~ ### 调用方式 ~~~php \Lying::$maker->captcha(); \Lying::$maker->captcha; \Lying::$maker->get('captcha'); ~~~ ### 使用方式 ~~~php $captcha = \Lying::$maker->captcha; //生成验证码,会直接输出图片 $captcha->render(); //校验验证码 $captcha->check('abcd'); ~~~ 鉴于不同的场景需要不同的验证码,验证码生成或者校验可以带上场景值: ~~~php $captcha = \Lying::$maker->captcha; $scene = 'login'; //生成验证码,会直接输出图片,验证码有效期60秒 $captcha->render($scene, 60); //校验验证码,如果验证码输错了,可以重新校验(第三个参数设置为false表示非一次性验证) $captcha->check('abcd', $scene, false); ~~~