[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
- 虛擬主機