位置: 编程技术 - 正文

分享个简单易懂且非常有用的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+队列的实现代码(详解九章算法)

  • 增值税发票抵扣是什么意思
  • 加油发票样式图
  • 建筑业适用什么行业
  • 非贸易付汇去银行汇款流程
  • 跨境电商的钱怎么到账
  • 营业执照办出后多久生效
  • 电子发票冲红还是作废
  • 住宅小区共用部位有哪些
  • 发票存在哪些税务风险?
  • 契税印花税的会计分录怎么写
  • 公司委托收款该怎么办
  • 车间工人加班餐图片
  • 生产过程半成品报废
  • 收到公众号申请的小额打款认证怎么入账?
  • 股东分配红利交什么税
  • 劳务公司购买材料怎么做账
  • 计提水利建设基金的依据
  • 收据开17%的票税负因子是多少?
  • 非独立核算的门市部增值税
  • 增值税发票发票号
  • 分公司发生修理费能否在总公司列支?
  • 分红转增股本什么意思
  • 存货周转次数计算公式怎么理解
  • 跨期发票如何进行会计处理?
  • 银行利息借贷方怎么做凭证
  • 固定资产的折旧从什么时候开始
  • 电脑温度过高会怎么样
  • 新政府会计制度科目表
  • 内部控制的概念最早是从什么得来的
  • linux swap 0
  • 买材料没发票怎么办
  • window10怎么取消快捷方式
  • rtp webrtc
  • uni app面试题
  • nvm使用教程
  • 小企业会计准则财务报表至少包括
  • vue叠化在哪里
  • 公司收到财政补贴款的会计分录
  • h5支付功能
  • php session跨域共享
  • nbtstat命令
  • 长期待摊费用属于调整账户吗
  • 如何分析现金利润情况
  • 财务上大写数字420.1怎么写
  • 应补退税额是什么意思 法律
  • 工资薪金税务缴纳
  • mysql索引之间的区别
  • 企业所得税营业成本包括管理费用吗
  • 印花税凭证名称如何选择
  • 用人单位垫付生育津贴垫付金额和垫付天数
  • 基本账户的定义
  • 长期应付款的会计编号
  • 会计核算的内容包括
  • 受疫情影响较大的困难行业企业2020
  • 专票已认证但又不能抵扣
  • 非居民企业所得税
  • 未开发票已收款如何做账?
  • 小额 无发票
  • 工会经费缴纳会计分录
  • 没有认证的进项税额怎么做凭证
  • 启用账簿时应在账簿上签名或盖章的是
  • 设置行政机构的主要依据是
  • mysql解压安装教程5.7
  • 如何用win7
  • centos安装软件教程
  • centos7查看目录
  • 苹果mac双系统怎么删除
  • win1020h2正式版
  • -f linux命令
  • cocos设计模式
  • 位图字体图片
  • 详细谈谈哲学的基本问题
  • Node.js中的construct构造函数
  • 批处理改ipv4地址
  • jquery怎么写
  • 用jquery
  • 销售农药化肥的经营范围
  • 办理跨区域事项报验
  • 海员证办理流程需要什么手续时间多长
  • 国地税合并6月15日挂牌
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设