laravel5.4生成验证码的实例讲解


Posted in PHP onAugust 05, 2017

总结:本篇文章介绍使用gregwar/captcha实现验证码的具体操作步骤,以及可能遇到的问题和解决办法。

操作步骤:

1, 在laravel5.4项目根目录下找到 composer.json 这个文件,

laravel5.4生成验证码的实例讲解

添加

"gregwar/captcha": "1.*" 到composer.json这个文件中,如下图所示。

laravel5.4生成验证码的实例讲解

2. 然后打开命令行,找到项目的根目录,运行composer update,

laravel5.4生成验证码的实例讲解

可以看到这个扩展库已经下载好了,

3.接下来,就可以正常使用验证码了,先测试验证码是否可以正常显示出来,

先定义路由:

laravel5.4生成验证码的实例讲解

然后在控制层里新建一个codeController.php,

<?php 
namespace App\Http\Controllers;

use App\Http\Requests;
use App\Http\Controllers\Controller;

use Illuminate\Http\Request;

//引用对应的命名空间
use Gregwar\Captcha\CaptchaBuilder;
use Session;
class CodeController extends Controller{
 public function captcha($temp)
 {
  $builder = new CaptchaBuilder();
  $builder->build(150,32);
  $phrase = $builder->getPhrase();
  //把内容存入session
  Session::flash('milkcaptcha', $phrase); //存储验证码
  ob_clean();
  return response($builder->output())->header('Content-type','image/jpeg');
 }

}

然后在浏览器里访问之前定义好的路由,就能看到验证码了

laravel5.4生成验证码的实例讲解

另外,还可以在composer.json中这样写,

laravel5.4生成验证码的实例讲解

还是在项目根目录执行composer update,然后在执行composer dump-autoload 命令。

同样可以达到效果。

最后,说一下我曾经遇到的问题,网上好多生成laravel验证码图片都是这样写的,

public function code($tmp)
{
//生成验证码图片的Builder对象,配置相应属性
$builder = new CaptchaBuilder;
//可以设置图片宽高及字体
$builder->build($width = 100, $height = 40, $font = null);
//获取验证码的内容
$phrase = $builder->getPhrase();
//把内容存入session
Session::flash('milkcaptcha', $phrase);
//生成图片
header("Cache-Control: no-cache, must-revalidate");
header('Content-Type: image/jpeg');
$builder->output();
}

我照着试了试,结果验证码图片显示乱码,不显示图片,如下图:

laravel5.4生成验证码的实例讲解

后来改了改

public function captcha($temp)
 {
  $builder = new CaptchaBuilder();
  $builder->build(150,32);
  $phrase = $builder->getPhrase();
  //把内容存入session
  Session::flash('milkcaptcha', $phrase); //存储验证码
  ob_clean();
  return response($builder->output())->header('Content-type','image/jpeg');
 }

就可以正常显示了。

以上这篇laravel5.4生成验证码的实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
图形数字验证代码
Oct 09 PHP
PHP4实际应用经验篇(2)
Oct 09 PHP
利用PHP+JS实现搜索自动提示(实例)
Jun 09 PHP
PHP set_error_handler()函数使用详解(示例)
Nov 12 PHP
php批量删除数据库下指定前缀的表以prefix_为例
Aug 24 PHP
PHP之浮点数计算比较以及取整数不准确的解决办法
Jul 29 PHP
php根据日期或时间戳获取星座信息和生肖等信息
Oct 20 PHP
CodeIgniter分页类pagination使用方法示例
Mar 28 PHP
MAC下通过改apache配置文件切换php多版本的方法
Apr 26 PHP
php给数组赋值的实例方法
Sep 26 PHP
Laravel使用swoole实现websocket主动消息推送的方法介绍
Oct 20 PHP
PHP实现页面静态化深入讲解
Mar 04 PHP
CakePHP框架Model函数定义方法示例
Aug 04 #PHP
CakePHP框架Model关联对象用法分析
Aug 04 #PHP
PHP实现将优酷土豆腾讯视频html地址转换成flash swf地址的方法
Aug 04 #PHP
Win10 下安装配置IIS + MySQL + nginx + php7.1.7
Aug 04 #PHP
php7安装yar扩展的方法详解
Aug 03 #PHP
ThinkPHP 3.2.3实现页面静态化功能的方法详解
Aug 03 #PHP
PHP7扩展开发教程之Hello World实现方法示例
Aug 03 #PHP
You might like
ThinkPHP模板引擎之导入资源文件方法详解
2014/06/18 PHP
PHP中使用file_get_contents post数据代码例子
2015/02/13 PHP
php实现生成带二维码图片并强制下载功能
2018/02/24 PHP
JQuery toggle使用分析
2009/11/16 Javascript
juqery 学习之四 筛选查找
2010/11/30 Javascript
JS trim去空格的最佳实践
2011/10/30 Javascript
JQuery中模拟image的ajaxPrefilter与ajaxTransport处理
2015/06/19 Javascript
浅谈JavaScript中运算符的优先级
2015/07/07 Javascript
Jqgrid之强大的表格插件应用
2015/12/02 Javascript
JavaScript中输出信息的方法(信息确认框-提示输入框-文档流输出)
2016/06/12 Javascript
JavaScript简单获取系统当前时间完整示例
2016/08/02 Javascript
JavaScript实现设置默认日期范围为最近40天的方法分析
2017/07/12 Javascript
bootstrap精简教程_动力节点Java学院整理
2017/07/14 Javascript
React Native实现进度条弹框的示例代码
2017/07/17 Javascript
深入理解Vue 的条件渲染和列表渲染
2017/09/01 Javascript
详解在Vue中有条件地使用CSS类
2017/09/30 Javascript
Vue下路由History模式打包后页面空白的解决方法
2018/06/29 Javascript
微信小程序实现带缩略图轮播效果
2018/11/04 Javascript
JS中的模糊查询功能
2019/12/08 Javascript
vue项目实现图片上传功能
2019/12/23 Javascript
[05:31]DOTA2英雄梦之声_第04期_光之守卫
2014/06/23 DOTA
Python语言技巧之三元运算符使用介绍
2013/03/04 Python
Python将xml和xsl转换为html的方法
2015/03/10 Python
Python多进程并发与多线程并发编程实例总结
2018/02/08 Python
django模型动态修改参数,增加 filter 字段的方式
2020/03/16 Python
解决Django部署设置Debug=False时xadmin后台管理系统样式丢失
2020/04/07 Python
解决python cv2.imread 读取中文路径的图片返回为None的问题
2020/06/02 Python
Python headers请求头如何实现快速添加
2020/11/03 Python
Tostadora意大利:定制T恤
2019/04/08 全球购物
阿拉伯书店:Jamalon
2019/07/24 全球购物
北大青鸟学生求职信
2013/09/24 职场文书
银行实习生的自我评价
2013/12/09 职场文书
劳动竞赛口号
2014/06/16 职场文书
抗洪救灾感谢信
2015/01/22 职场文书
继承权公证书范本
2015/01/23 职场文书
分享很少见很有用的SQL功能CORRESPONDING
2022/08/05 MySQL