位置: 编程技术 - 正文

详解thinkphp5+swoole实现异步邮件群发(SMTP方式)(详解金球奖之争)

编辑:rootadmin

推荐整理分享详解thinkphp5+swoole实现异步邮件群发(SMTP方式)(详解金球奖之争),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:详解金球奖之争,详解杭州亚运会会徽和口号,详解九章算法,详解金球奖之争,详解增发万亿国债细节,详解万亿增发国债:全部给地方,详解增发万亿国债细节,详解万亿增发国债:全部给地方,内容如对您有帮助,希望把文章链接给更多的朋友!

本文介绍了thinkphp5+swoole实现异步邮件群发(SMTP方式),分享给大家,具体如下:

1、环境说明

阿里云centos7 thinkphp5.0. swoole2.0.8

2、tp实现邮件发送

在项目下建立如下的文件目录:

其中SendMail.php是我们实际调用的发送邮件的文件。以下是主要代码:

里面的config配置项,我们放在项目底下的config.php文件中,具体配置内容如下:

2.1这里我们只是实现了smtp协议发送的demo,所以在封装的层面上没有做到很全面,不是很灵活。图中其他两个文件(PhpMailer.php和Smtp.php)是Phpmailer邮件发送类的核心文件,为了简化调用,抽取了出来,详细的用法和参数设置,可以参考gayhub的使用说明phpmailer

2.2 注意点

在此步骤中,我们需要注意几点:1是你设置的邮件发送的账号是否已经开启SMTP并且找对对应的安全协议和端口号。2、当前服务器是否支持SMTP服务,这边很多时候会受一些socket函数的影响,遇到问题的时候,我们应该把SMTPDebug参数设置为1,然后根据debug信息去细心调试。3、发出的邮件有些会被放入垃圾箱,注意查收。

2.3 调用

建立如下的文件目录结构:

在Index.php中调用发送邮件的方法,具体代码如下

2.4 调用结果

我们可以在QQ邮箱的垃圾箱中找到我们刚刚发送的一封邮件

3、结合swoole实现异步群发3.1安装swoole

swoole扩展安装的详细步骤官网上面都有,不再赘述,swoole文档传送门

安装完swoole之后,建议为自己的IDE加上swoole的代码提示,配置IDE提示swoole代码的传送门

3.2实现异步群发

详解thinkphp5+swoole实现异步邮件群发(SMTP方式)(详解金球奖之争)

我们先实现异步的服务端:

在服务端,我们用了一个的loop来模拟了群发,实际换成不同的email地址就可。

下面我们实现客户端

3.3开启服务端

这里必须要用CLI方式,我们进入项目的根目录。

执行

先监测一下端口是否被占用,如果占用则

杀死进程

然后我们执行

这条命令的作用是用cli模式来使我们的端口处于监听状态。且保持这个终端处于活跃状态,这样方便我们查看发送的结果。

接着我们可以用CLI或者浏览器访问的方式来访问我们的客户端

当我们执行一次的时候客户端的时候,我们可以在服务端的终端看到屏幕上面出现如下的画面:

说明我们已经正常群发了。

下面,我们就来测试异步,因为服务器会对IP进行检测,如果在某个时间发送也别频繁的话,会出现发送失败的情况,所以我们测试的时候,采用连续执行4次客户端的方式

下面是执行的结果:

从图中发送的顺序来看,我们可以很容易的判断,我们已经实现了异步的发送。

邮箱里面也接收到了刚刚发送的邮件。

4、后记~

swoole是一种想要熟悉和熟练使用的扩展,但是限于网络编程知识的不足,所以还是要多多测试和学习,demo中有不足的地方,还请指出QAQ

标签: 详解金球奖之争

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

上一篇:详解PHP字符串替换str_replace()函数四种用法(详解php字符串替换)

下一篇:PHP多进程之pcntl_fork的实例详解(php进程太多)

  • 农机企业所得税税率
  • 财税筹划课程
  • 农村合作社怎么挣钱
  • 先付款后签合同 法律效力
  • 企业所得税期初资产总额怎么填写
  • 个纳税人申报
  • 施工单位的产值报告模板
  • 在公司交社保不满十年,女性按照什么退税
  • 银行付款回单怎么看
  • 销售货物产生的运费如何开票
  • 去年已认证发票红冲怎么报税
  • 平销返利如何开红字发票
  • 财务费用汇兑损益是什么意思
  • 提取公积金收费比例
  • 国家金库是什么税费
  • 自收自支事业单位是什么意思
  • 房产税缴纳时间规定
  • 手撕税票去哪可以弄到
  • 非居民企业取得股息红利企业所得税
  • 支票结算方式下用其他货币资金账户
  • 什么人可以领购房补贴怎么领取
  • 个人买卖黄金如何缴税
  • 个体户怎么给供货公司
  • 价外收入是什么意思
  • 出口退税限额如何理解
  • 什么情况下确认成本
  • 跨年度增值税发票作废怎么退税
  • 计算应缴房产税的公式
  • 对于以长期投资为目的
  • ros source
  • 一叶兰的养殖方法和注意事项有哪些
  • easyui给下拉框赋值
  • 工程服务费会计怎么做账
  • ThinkPHP+EasyUI之ComboTree中的会计科目树形菜单实现方法
  • php生成二维码海报
  • v-model的双向绑定原理
  • 数据库读写异常
  • 发票其他服务费包括哪些
  • 企业所得税包含在税金及附加里面吗
  • vue3当中如何监听新增的属性
  • javascript最好的教程
  • 31.JavaScript数组进阶,一网打尽数组操作函数slice、filter、map、reduce、some、every、find、splice
  • ftp port命令
  • css content \f041
  • 土地增值税可以抵扣吗
  • 逐步结转分步法和平行结转分步法
  • phpcms api
  • uni-app表单验证
  • 公章变更需要到哪个部门
  • 预收款方式销售货物的会计分录
  • 收据4联
  • 扣缴义务人如何登录电子税务局
  • 哪些情况下可以使用食品添加剂
  • 所得税费用是会计科目吗
  • 债权投资相关科目
  • 专项应付款能转出吗
  • 购进商品的运费计入什么科目
  • 对公帐户资金转入个人帐户规定
  • 非本公司员工能否享受本公司的福利
  • mysql 存储过程存放在哪里
  • windows server core license
  • 无光驱无u盘重装系统
  • linux wget curl
  • win8.1系统激活
  • win8删文件需要权限怎么弄
  • win10系统admin和oobe
  • js实现无缝轮播
  • node.js基本语法
  • excel一行首尾互换
  • unity双面材质
  • 简单的设计模式
  • 陕西省税务系统
  • 郑州市高新区税务局地址
  • 成都所见所得科技有限公司是什么平台
  • 中国税务精神内容英文
  • 其他收入工会经费必须申报吗
  • 国税发2014年39号
  • 一般纳税人企业所得税5%还是25%
  • 非关税壁垒英语翻译
  • 不缴纳耕地占用税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设