[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);
~~~
- 序言
- 更新日志
- 安装
- 规范
- 常量
- 配置
- 自动加载
- MVC
- 模块
- 控制器
- 模型
- 视图
- php原生模板
- 模板引擎
- 变量输出
- 模板注释
- 模板继承
- 模板引用
- 流程控制
- 原样输出
- 服务组件
- Hook组件
- Request组件
- Router组件
- Cookie组件
- Encrypter组件
- Dispatch组件
- Response组件
- View组件
- Session组件
- Helper组件
- 数据分页
- 数据验证
- Logger组件
- Cache组件
- Redis组件
- Connection组件
- 执行sql语句
- 查询生成器
- 查询方法详解
- Schema
- Captcha组件
- CLI
- CLI工具
- 事件
- 类事件
- 实例事件
- 全局事件
- 助手函数
- 扩展
- 异常
- 部署
- Apache
- Nginx
- IIS
- 虚拟主机