分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 代码编程

利用Guzzle实现另一种PHP异步发送邮件(laravel5.4)

发布时间:2023-09-06 01:25责任编辑:胡小海关键词:PHP邮件

前言:第二种实现方法

方法的思路:

此方法的实现需要借助Guzzle这个PHP的HTTP客户端,用来轻而易举地发送请求,并集成到我们的WEB服务上(laravel中如何引入guzzle不多说)

使用该方法所实现的异步为让发送邮件的请求在不需要等待回应的情况下都发出,即只要循环触发方法,分开发送,分开响应,可以监控,

guzzle中文文档: http://guzzle-cn.readthedocs.io/zh_CN/latest/quickstart.html

过程:

该方法为邮件内容处理,然后调用了doThread方法(自己写的方法),此方法为开始异步的方法,第一个参数为url,即异步请求的路由;第二个从参数为一个回调函数,此处我用来记录邮件发送后请求失败或者成功

   

接下来介绍doThread方法,此方法即为异步请求的地方,此处调用的方法均为Guzzle中的方法,所以本篇博文的重点其实是看明白Guzzle的手册

   

最后就是异步请求给定的路由连接实现发送邮件,在我的回调函数当中可以分别记录下发送成功或者失败

顺便说一下$response->getbody()->getContents()该语句可以获取你异步请求的方法中返回的结果,手册中均有。

总结:

该方法还是要必须等待所有的邮件都发送完成返回才能进行其他操作,所以等于发送邮件的实现还是占用了主进程,只是我们变着法子让处理的时间变到了最短。

但是我仍然觉得这样的方法在请求达到一定的数量以后还是需要较长时间的等待,并不友好。

最后学会看手册真的很重要,手册里面都写着呢。

利用Guzzle实现另一种PHP异步发送邮件(laravel5.4)

原文地址:http://www.cnblogs.com/cyclzdblog/p/7840625.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved