php使用SAE原生Mail类实现各种类型邮件发送的方法
本文实例讲述了php使用SAE原生Mail类实现各种类型邮件发送的方法。分享给大家供大家参考,具体如下:
用过SAE的都知道,SAE所有服务中,就数Mail服务最不行了,时不时邮件就发不出去。特别是企业邮局,连新浪自家的企业邮局都出问题。今天就给出解决方案。
先来看看SAE文档中给出的DEMO:
$mail=newSaeMail(); $mail->setAttach(array('my_photo'=>'照片的二进制数据'));//附件发送方法 $ret=$mail->quickSend('to@sina.cn','邮件标题','邮件内容','smtpaccount@unknown.com','password','smtp.unknown.com',25);//指定smtp和端口
SAE给出的这个DEMO使用的是quicksend()方法,该方法经我测试,在使用非企业邮局的时候是可以完美发送的,而且到信率很高。但是注意只能使用smtp的25端口,不能使用SSL连接,不知道是不是打开方式不对,希望高人指点。
但是对于网站来说,有一个自有的独立域名邮箱很重要,这时企业邮局就派上用场了。只是使用quicksend()方法总是发送失败。所以我们要使用send()方法来。send()方法使用稍微复杂些:
1、先设置发送参数setOpt(),设置的这个发送参数对quicksend()方法无效,只对send()有效。
$mail=newSaeMail(); $mail->setOpt(array( 'from'=>'发件邮箱', 'to'=>trim($to),//接收信箱 'smtp_host'=>'smtp服务器', 'smtp_port'=>25,//port 'smtp_username'=>'账户全名', 'smtp_password'=>'密码', 'subject'=>'主题', 'content'=>'内容', 'content_type'=>'HTML'//发送格式,默认是text ) ); $ret=$mail->send();
如此,就可以。更多参数可以去官方文档查看。
由于本站只是对评论回复进行邮件提示,所以在send()并没有对SSL测试,有需要可以自己测试。
到此这就结束了,如果不喜欢该方法,还可以自己百度第三方的Mail类库,也是可以的。经测试发信与收信大概都在3秒以内,可以满足大部分需求了。
更多关于PHP相关内容感兴趣的读者可查看本站专题:《php常见数据库操作技巧汇总》、《PHP数组(Array)操作技巧大全》、《php排序算法总结》、《PHP常用遍历算法与技巧总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《PHP数学运算技巧总结》、《php正则表达式用法总结》、《PHP运算与运算符用法总结》及《php字符串(string)用法总结》
希望本文所述对大家PHP程序设计有所帮助。