位置: 编程技术 - 正文

基于Laravel5.4实现多字段登录功能方法示例

编辑:rootadmin

推荐整理分享基于Laravel5.4实现多字段登录功能方法示例,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

最近在一个项目中需要实现一个多字段登录功能,简单来说就是可以使用用户名、邮箱或手机号任意一种方式进行登录。所以本文就来给大家介绍了关于Laravel5.4多字段登录的相关内容,分享出来供大家参考学习,话不多说了,来一起看看详细的介绍吧。

以下内容基于laravel5.4

方法如下:

首先,通过artisan工具生成auth模块

php artisan make:auth

这时候AppHttpControllers目录下会新增一个Auth目录,该目录下为注册登录相关的控制器,resourcesviews目录下也会生成一些与注册登录相关的视图

基于Laravel5.4实现多字段登录功能方法示例

laravel的官方文档中说手动认证用户需要使用IlluminateSupportFacadesAuth类的attempt方法,如下:

这个方法会根据你传入的参数判断数据库中是否存在与之相匹配的用户,如果存在并且密码正确返回true,反之返回false

遂在LoginController中添加该方法,但是好像并没有效果

于是开始观察LoginController的实现机制,发现它实现了一个AuthenticatesUsers的trait,追踪到这个trait的定义文件,发现这个文件就是我们想要的东西

里面有一个login方法,就是负责处理登录的逻辑

分析了一波这个文件,发现主要进行登录判断的就是attemptLogin方法,我们只要重写这个方法即可,先看看原来的是怎么写的,根据原来的进行重写:

在LoginController重写后:

只需要用attempt方法进行多次判断即可,只要成功就返回true,不成功继续用其他字段进行判断,都不成功则返回flase

测试,可以实现多字段登录效果

总结

本文链接地址:https://www.jiuchutong.com/biancheng/289981.html 转载请保留说明!

上一篇:如何利用预加载优化Laravel Model查询详解(预加载的目的是什么)

下一篇:如何修改Laravel中url()函数生成URL的根地址(如何修改家里的wifi密码)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络