用php写群发邮件时,取消等待返回的方法

今天在系统中写一个要管理员操作发送相关邮件给用户的功能。

本来觉得挺简单的,封装一个sendemail的方法,直接调用就OK了。

写完之后一测试发现,页面会一直停留在发送邮件页面,直到sendemail执行完成,返回相关信息,页面才跳转。

但这明显不符合功能需求。

于是想到了使用fsockopen和fputs来实现异步的发送email,让程序后台进行,不占用前台页面的操作时间。


//异步调用发送邮件 让后台进行发送。
$fp=fsockopen('localhost',80,&$errno,&$errstr,5);
if(!$fp){
echo "$errstr ($errno)<br />\n";
}
fputs($fp,"GET /send_email.php?acc=".$send_to."\r\n");
fclose($fp);
//异步调用结束

执行了这个之后,web页面就不会一直停留在空白页面 等待 sendemail 返回消息

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值