mlk9/ captcha-laravel
Laravel 9+ 使用的图像验证码
v3.1.1
2023-12-25 05:55 UTC
Requires
- php: >=7.4
- ext-gd: *
- ext-mbstring: *
- illuminate/support: ~6|~7|~8|~9|~10
- intervention/image: ^3.1
Requires (Dev)
- laravel/pint: ^1.13.6
- orchestra/testbench: ^8.18
- phpstan/phpstan: ^1.10.47
- phpunit/phpunit: ^10.5
- symfony/var-dumper: ^6.4.0|^7.0.1
README
Laravel 的图像验证码
- 支持会话
- 生成您自定义的图像
波斯语 V2 文档: https://vrgl.ir/WQXCT
安装
您可以通过 composer 安装此软件包
composer require mlk9/captcha-laravel
然后发布供应商
php artisan vendor:publish --tag=captcha-laravel
文档
配置
- 类型 (数组,[字符,数学])
- 背景 (数组)
- 字符 (字符串)
- 长度 (整数)
- 字体 (字符串|数组)
- 颜色 (数组)
- 宽度 (整数)
- 高度 (整数)
- 类型哈希 ([laravel,sha256,md5])
生成简单的验证码
您可以使用组件
<x-captcha-box /> <x-captcha-box-refresh /> //via refresh
或创建自定义,例如这样
<div> <div> <div> <!-- Captcha generate --> <img src="{{ \Mlk9\Captcha\Facades\Captcha::generate()->image }}" alt="captha"> </div> <div> <div>{{ __('captcha.captcha') }}</div> <input id="captcha" name="captcha" type="text" required autocomplete="off"> </div> </div> </div>
验证
您可以在验证中使用 captcha 规则
Illuminate\Support\Facades\Validator::validate($request->all(), ["captchaField"=>"captcha"] );
此外
您还可以将中间件 captcha 添加到您的路由或控制器中
第三种方法是使用 isValid(string: entry) 从 \Mlk9\Captcha\Facades\Captcha::class,例如
if(!\Mlk9\Captcha\Facades\Captcha::isValid($request->captcha)) { return back()->withErrors('Wrong Captcha'); }
注意 V2
如果您遇到字体错误,可以在配置中替换为 'font' => public_path('vendor/captcha/fonts/tahoma.ttf'),