位置: 编程技术 - 正文

分享个简单易懂且非常有用的laravel事件(简明易懂的)

编辑:rootadmin

推荐整理分享分享个简单易懂且非常有用的laravel事件(简明易懂的),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:简单通俗易懂,简单分享一下,简单分享一下,简明易懂的,简明易懂的,简明易懂的,分享个简单易懂的网名,简单易懂的,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

在开始本文的正文之前,我们先说一下在什么场景会使用这个事件功能。

事情大概是这样的,需求要在用户注册的时候发一些帮助邮件给用户(原本用户在注册之后已经有发别的邮件的了,短信,IM什么的)

原来这个注册的方法也就多行代码。但是有时候我们为了省事,直接在注册代码后面添加了各种代码。

例如这个注册方法本来是这样的

现在有一个需求,要求注册之后给用户的邮箱发一个广告,绝大多数的人(也包括以前的我)就直接在这后面接着写代码了

这是比较直观的写法,后来又有需求要发个短信。

然后又有需求,要发IM消息,这样的需求很多。这些方法如果你封装了,可能也就一行代码。

分享个简单易懂且非常有用的laravel事件(简明易懂的)

但是,在实际项目中,这个注册方法里面已经加了很多东西。如果多人开发的话各种不方便。然后想到了laravel似乎有这个功能,但是一直都不知道怎么应用,仔细看了一下手册,发现和自己的想法不谋而合。

laravel的事件功能实际上更倾向是一种管理手段,并不是没了它我们就做不到了,只是它能让我们做得更加好,更加优雅。

laravel的事件是一种管理+实现的体现,它首先有一个总的目录,然后我们可以宏观的看到所有的事件,而不需要每次都要打开控制器的方法我们才能知道注册后会发生什么,这一点很重要,非常的方便,我就不按着laravel的顺序来讲,而是按着实际情况来建立这种关系。

现在我们无非就是要在注册之后要做一系列的事情,首先得注册完之后调用一个事件,然后这个事件再做各种各样的事

找到appProvidersEventServiceProvider.php文件。给它添加关系,告诉系统,有人用event()调用了事件之后要被谁监听得到。

这里是注册事件的入口,相当于一个总目录,这样就可以跟注册代码解耦了,以后要加东西我们就不需要再去看注册方法的代码了

现在注册完之后会触发这个AppEventsRegister类,然后这个类会被AppListenersSendAdMail,AppListenersSendSms,AppListenersSendHelpInformation监听得到,我们进入appEvents目录,创建Register这个类

这样就可以了。

然后去appListeners目录创建各种要做的事件监听类。

这个handle方法就是我们要做的具体实现了,有个很方便的功能就是如果implements ShouldQueue这个接口的话就会异步队列执行,如果去掉的话就是同步执行。很方便有没有,这样代码就解耦了,不需要再管注册代码了,在这里就能很方便的管理了。多人开发也是单独写自己的Listeners就可以了。

具体的建议大家去看看手册吧,有些内容我这里就不完全说了。我只是抛砖引玉

总结

标签: 简明易懂的

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

上一篇:centos 7系统下安装laravel运行环境的步骤详解(centos7完整版安装)

下一篇:详解thinkphp+redis+队列的实现代码(详解九章算法)

  • 土地使用税怎么征收标准
  • 发票在系统里作用大吗
  • 存货是根据总账科目计算填列吗
  • 哪些福利费可以进在建工程
  • 分公司的税收机关在总公司还是分公司
  • 2021年停车费税率
  • 银行的电子退库是什么,怎么做账
  • 新能源汽车补贴2023年政策
  • 对方把发票丢了可以重开吗
  • 退休后兼职收入需要交税吗
  • 酒店租金计入什么会计科目
  • 收到基金计入什么科目
  • 企业亏损会影响利润吗
  • 出口发票金额和备注了差了1分钱
  • 法人代表领工资怎么领
  • 年终奖个税筹划临界点
  • 税务局锁了开票系统票已领出还可以开出来吗
  • 税控系统全额抵扣增值税申报
  • 所得税汇算清缴退款账务处理
  • 固定资产减值准备属于什么科目
  • 成本分析总结报告
  • 支付教育培训费
  • 工厂电线
  • 可转换公司债券账务处理
  • mac怎么调整网页大小
  • 电脑开机无启动
  • 企业间借款的增值税计算
  • 2020最新win10密钥
  • windows10一直刷屏
  • php5.4+mysql
  • 农村自建房买卖怎样才合法
  • 金鱼草的养殖方法和注意事项有哪些
  • php的array_multisort()使用方法介绍
  • 增值税专用发票的税率是多少啊
  • php代码生成
  • linux中web服务器的安装,配置与测试
  • javaweb总结笔记
  • react js 教程
  • 往来款项清查账务处理
  • 城镇土地使用税减免税政策
  • 成品油涉及范围有哪些
  • 小规模收入账务
  • sql server2008中删除表中记录的命令
  • 财政补贴收入要交增值税税率
  • 其他应收款的账龄如何计算时间
  • 购进国内交通运输产品
  • 水利建设基金计提会计分录
  • 商品互换概念
  • 企业利润分配应当遵循的原则
  • 无形资产减值准备
  • 发票开出来对方不走账会怎么样?
  • 长期待摊费用摊完了之后怎么处理
  • 特殊销售方式下的销售额确认图文怎么做
  • 哪些发票必须注销
  • 序时账是明细账吗
  • macos卸载java
  • linux 更新系统
  • win8系统怎么更改无线网络IP
  • virtualbox虚拟机菜单找不到了
  • macbook graphpad
  • 进程registry
  • linux系统中怎么输入中文
  • 电脑win8.1系统怎么样
  • 红石cpu教程
  • 简单谈谈你的入党动机
  • express sendfile
  • 用css制作网页的步骤
  • cocos2d schedule
  • 将网页改换成黑白
  • 批处理/d
  • javascript的理解
  • python import os
  • android sdk使用教程
  • 税务局网上申请开票
  • 甘肃国家税务局官网app
  • 天津市税务总局现任领导
  • 出口退税申报时闿
  • 日照公交305发车时间表
  • 电子缴款凭证可以用于报销吗
  • 村级服务公开的具体内容
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设