首页  >  文章  >  后端开发  >  使用phpmailer发送邮件的方法

使用phpmailer发送邮件的方法

一个新手
一个新手原创
2017-09-12 11:22:171329浏览

phpmailer发送邮件

  PHP内置的mail函数使用起来不够方便,另外受其他语言的影响,博主更偏好面向对象的包管理模式,因此phpmailer成为了我用PHP发送邮件的首选,这里分享给大家。

库导入

这里使用composer进行包管理,以下是json文件:

{
    "name": "",
    "description": "test the mail",
    "require": {
        "PHPMailer/PHPMailer":"*"   
    }}

使用样例

<?php// include("./vendor/autoload.php");include("./vendor/phpmailer/phpmailer/class.phpmailer.php");include("./vendor/phpmailer/phpmailer/class.smtp.php");function postmail($to, $subject="", $body=""){    $mail = new PHPMailer(); #创建PHPMailer实例
    $mail->CharSet = &#39;utf-8&#39;; #设置编码形式,默认为iso-8859-1
    $mail->isSMTP(); #表示使用SMTP服务
    $mail->SMTPAuth = true; #使用SMTP认证
    $mail->Host = &#39;smtp.163.com&#39;; #SMTP主机名,这里以163为例
    $mail->Username = "xxxx@163.com"; #SMTP服务的用户名
    $mail->Password = "xxxx"; #SMTP用户的密码(现在多采用授权码的形式)
    
    #下面的部分是用户可见的
    $mail->setFrom("xxxx@163.com","userName"); #第二个参数,用户看到的发送方的姓名,是可以随便改的
    $mail->Subject = $subject; #邮件主题
    $mail->msgHTML($body); #邮件内容,这里采用HTML形式
    $mail->addAddress($to,&#39;&#39;); #地址,第二个参数是接受者,发送对象名为&#39;&#39;时,163的测试结果是SMTP服务商会把它改成‘我’
    $mail->addAttachment(&#39;./php.png&#39;); #添加附件
    #发送
    if($mail->send())
    {        echo "邮件发送成功";
    }else
    {        echo "邮件发送失败";
    }
}
postmail(&#39;xxxx@qq.com&#39;,"测试","你好吗");?>

测试结果

使用163作为发送方,发送给QQ邮箱、163邮箱均通过测试。

以上是使用phpmailer发送邮件的方法的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn