原标题:php异步群发邮件

当程序执行群发邮箱的时候,会出现等待程序反馈时间太长 这对于用户体验来说是很不好的,用户大多会在程序没有执行完就关闭程序,这样发送邮件也会中断,所以我们的解决思路应该是用异步去执行发邮件的过程。

一、创建一个连接用户操作页面和执行发件的方法:

private function connect($host, $path, $param = array()){

$query = isset($param) ? http_build_query($param) : '';

$port = 80;

$errno = 0;

$errstr = 'error';

$timeout = 30; //连接超时时间(S)

$fp = @fsockopen($host, $port, $errno, $errstr, $timeout);

if (!$fp) {

return '连接失败';

}

if ($errno || !$fp) {

return $errstr;

}

stream_set_blocking($fp,0); //非阻塞

stream_set_timeout($fp, 1);//响应超时时间(S)

$out = "POST " . $path . " HTTP/1.1\r\n";

$out .= "host:" . $host . "\r\n";

$out .= "content-length:" . strlen($query) . "\r\n";

$out .= "content-type:application/x-www-form-urlencoded\r\n";

$out .= "connection:close\r\n\r\n";

$out .= $query;

$result = @fputs($fp, $out);

@fclose($fp);

return $result;

}

二、用户操作方法 传递参数页面

public function index(){

$param = array(

0 => 'xxx@qq.com',

1 => 'xxx@qq.com',

);

$url='http://'.$_SERVER['HTTP_HOST']..'/Sends/emails';

$info=parse_url($url);

/*dump($info);*/ $res=$this>Connect($info["host"],$info['path'],$param);

/*调用方法*/

echo '发送成功'; /*提示用户发送成功*/

}

三、发送邮件

public function emails(){

set_time_limit(0);/*设置程序运行时间没有限制防止运行超时*/

ignore_user_abort(true);//设置与客户机断开是否会终止执行

$data=I('post.');

$email='';

$sendTitle="邮件标题";

$sendinfo='邮件内容';

$send=array(

'title'=>$sendTitle,

'detail'=>$sendinfo,

);

$mail= new Service\SendemailService();

foreach ($data as $k => $v) {

$email.=$v.'|';

$toMail=$v;

$info=$mail->sendEmail($send,$toMail);

/*执行发送邮箱*/

}

$log_name = "Public/notify_url.log"; //log文件路径

$this>log_result($log_name,$email.date(time(),'H:i:s').';');

/*记录一下日志看程序是否执行发件*/

}

用户运行结果(以上是测试)

日志查看

测试的两个邮箱都已经收到邮件返回搜狐,查看更多

责任编辑:

php邮箱群发,php异步群发邮件相关推荐

  1. 什么邮箱群发进箱率高,邮箱怎么群发邮件进箱率怎么样?

    什么邮箱群发进箱率高,邮箱怎么群发邮件进箱率怎么样? 邮件群发是业务拓展.用户维护不可缺少的沟通方式,以极高的性价比被大家关注.近年来,随着邮件拓客的扩大,竞争逐渐增大,尤其是外贸.国际物流等行业,如 ...

  2. 哪个邮箱群发效果好?邮件可以群发吗?群发邮件技巧教程来了

    现在对群发邮件的需求更为普遍.海量群发,一对一发送客户,快速到达Tom邮箱看看,让用户快速了解公司动态. 邮件营销的推广工具 一般分为三种形式:网页平台版.软件版.就目前来看使用网页版较多,主要原因是 ...

  3. python群发邮件 不进垃圾箱_实战干货:邮箱群发2000封邮件如何做到不进垃圾箱...

    原标题:实战干货:邮箱群发2000封邮件如何做到不进垃圾箱 重点导读 很多人认为邮件营销是非常古老的网络营销手段,已经没有多少人在用了.但是有时候招不用新,管用就好. 我们平时在操作邮件群发的时候,大 ...

  4. 群发邮箱软件哪个好?邮箱群发平台哪个好用?

    日常使用邮箱办公的人员,经常会用到群发这个功能,群发邮件给客户.给同事,对于群发邮件来说,群发的数量应该是在首位的,其次就是群发是否可以正常的收到邮件,根据这两点,就可以判断出群发邮箱和平台哪个更加好 ...

  5. 企业邮箱群发软件平台哪个好,什么是群发单显收件人知道吗?

    当下拓展外贸客户的方法,除了朋友介绍以外,最常用到的是外贸邮件营销,也就是群发邮件,那就需要群发软件,根据行业里的评价,邮箱是很有效果的群发邮件平台.TOM企业邮箱是个国际邮箱,在国际收发信方面做的很 ...

  6. asp.net 异步群发邮件时遭遇到的问题 ddddddddd-执着-iteye技术网站

    asp.net 异步群发邮件时遭遇到的问题 ddddddddd-执着-iteye技术网站 2011年09月01日 客户要求为他的网站注册用户群发邮件 网站注册用户有9860名,因为注册时需要用户必须提 ...

  7. 群发功能java_利用java实现邮箱群发功能

    本文实例为大家分享了java实现邮箱群发的具体代码,供大家参考,具体内容如下 近来无事,在网上看了一些大牛文章,其中看到一篇比较好的,分享给大家! 下面是代码 邮箱实体 import java.io. ...

  8. 邮件群发怎么一次发给几百个人?哪个邮箱群发效果好呢

    邮件群发是日常业务拓展的重要方式,尤其是外贸.电商.展会等行业.性价比高.更精准.营销效果强都是邮件营销的特点,但很多企业往往因选不到合适的邮件群发平台而屡屡受阻,究竟哪个邮箱群发效果更好呢? 1. ...

  9. python教程104-Python通过邮箱群发工资条

    1.python邮件群发: 1)一个邮箱发相同的内容到N多邮箱,现在基本每个公司都有一个群聊,有的在微信群有的在钉钉群,这种方式可以说已经pass掉了,发推广垃圾邮件还是可以的. 2)一个邮箱发不同的 ...

最新文章

  1. 两个小技巧,马上加快上网速度
  2. dump mysql database_【MySQL Database】数据迁移工具:mysqldump
  3. java 注解的几大作用及使用方法详解(转载)
  4. 转:智能音箱市场深度报告:怎么大家都在抢这个两亿小蛋糕?
  5. 尼康d850相机参数测试软件,尼康 - D850 - 产品介绍
  6. swagger2 分组
  7. stm32 CRC-16校验代码,单片机ModBUS-CRC16校验
  8. Adwonder笔记
  9. 机器学习_回归和分类的区别
  10. udpSocket捕获ICMP不可达错误
  11. JAVA综合实习报告
  12. html如何调用function,请问HTML function函数怎么定义和调用?
  13. python3 pdf转图片_Python 将pdf转成图片的方法
  14. python oserror怎么解决_Python读取csv报错解决方法:OSError: Initializing from file failed
  15. 华师计算机前沿讲座课程论文,17春华师《教育技术前沿讲座》在线作业
  16. 「React 基础」组件生命周期函数componentDidMount()介绍
  17. 写字机器人软件_被误解的写字机器人应该如何为自己正名?
  18. redis的zadd命令
  19. javascript百炼成仙 第一章 掌握JavaScript基础1.5基础考核
  20. 微软学生中心开始对学生免费赠送Windows Server 2008 R2标准版

热门文章

  1. 最后一周 | 微生物组-宏基因组分析第8期(报名直播课免费参加线下2020.7)
  2. R堆叠柱状图各成分连线画法:突出展示组间物种丰度变化
  3. 星星模型 维度_用模型“想象”出来的target来训练,可以提高分类的效果!
  4. Python使用matplotlib可视化散点图、使用seaborn中的lmplot函数使用多子图可视化不同分组的散点图最优拟合线性回归曲线
  5. R语言ggplot2可视化分组散点图、将图例放置在图像内部的指定区域、自定义缩放图例中点形状pch的大小(增大或者缩小)、change size of shape elements
  6. R语言ggplot2可视化、不同分组使用不同的色彩、同一分组(group)的线条使用相同的色彩但是配置使用不同的线型(line type)
  7. R语言ggplot2可视化条形图(bar plot)、配置因子变量的全局填充色方案、这样不同数据集相同因子的填充色具有一致性(Fix colors to factor levels)
  8. R语言使用ggplot2包使用geom_density()函数绘制分组密度图(改变图例位置、移除图例)实战(density plot)
  9. R语言可视化绘制基本图形
  10. 什么是textCNN? 能用来做什么?结构是什么?