php使用SAE原生Mail类实现各种类型邮件发送的方法

yipeiwu_com5年前PHP代码库

本文实例讲述了php使用SAE原生Mail类实现各种类型邮件发送的方法。分享给大家供大家参考,具体如下:

用过SAE的都知道,SAE所有服务中,就数Mail服务最不行了,时不时邮件就发不出去。特别是企业邮局,连新浪自家的企业邮局都出问题。今天就给出解决方案。

先来看看SAE文档中给出的DEMO:

$mail = new SaeMail();
$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 = new SaeMail();
$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程序设计有所帮助。

相关文章

PHP计算百度地图两个GPS坐标之间距离的方法

本文实例讲述了PHP计算百度地图两个GPS坐标之间距离的方法。分享给大家供大家参考。 具体实现方法如下: 复制代码 代码如下:/**  * 计算两个坐标之间的距离(米) &nb...

PHP使用Session实现上传进度功能详解

本文实例讲述了PHP使用Session实现上传进度功能。分享给大家供大家参考,具体如下: 实现文件上传进度条基本是依靠JS插件或HTML5的File API来完成,其实PHP配合ajax...

php数组和链表的区别总结

PHP中数组和链表的区别 从逻辑结构来看 1.、数组必须事先定义固定的长度(元素个数),不能适应数据动态地增减的情况。当数据增加时,可能超出原先定义的元素个数;当数据减少时,造成内存浪费...

PHP7如何开启Opcode打造强悍性能详解

PHP7如何开启Opcode打造强悍性能详解

前言 鸟哥在博客中说,提高PHP 7性能的几个tips,第一条就是开启opcache: 记得启用Zend Opcache, 因为PHP7即使不启用Opcache速度也比PHP-5.6启用...

解析PHP中如何将数组变量写入文件

在用PHP记录日志,或者是 Ajax 请求出错想要 debug 的时候。我们一般都会将信息写入到一个指定的文件当中。然后根据相应的信息来处理问题。比如笔者最喜欢在用 Ajax 取不到数据...